当前位置: 首页 > 知识库问答 >
问题:

在带有逗号分隔的时间列的文本文件中读取?

孔彭祖
2023-03-14

我有一个txt文件,数据如下所示

A,B,C,Time
xyz,1,MN,14/11/20 17:20:08,296000000
tuv,0,ST,30/12/20 11:11:18,111111111

我在使用这段代码时读到了数据:

df = pd.read_csv('path/to/file',delimiter=',')

由于我的时间列,它不能正常工作,因为time是通过逗号分隔的。我该如何解决这一点,如何使它工作,即使在我有多列这样的时间格式的情况下?

我想获得一个如下所示的数据帧:

 A B C Time
 xyz 1 MN 14/11/20 17:20:08,296000000
 tuv 0 ST 30/12/20 11:11:18,111111111

多谢!

共有1个答案

楚瑞
2023-03-14

使用reset_index()方法、apply()方法和drop()方法:

df=df.reset_index()
df['Time']=df[['C','Time']].astype(str).apply(','.join,1)
df=df.drop(columns=['C'])
df.columns=['A','B','C','Time']

现在,如果您打印df,您将得到所需的输出:

    A       B   C   Time
0   xyz     1   MN  14/11/20 17:20:08,296000000
1   tuv     0   ST  30/12/20 11:11:18,111111111

现在,如果您希望将其转换回txt文件,则使用:

df.to_csv('filename.txt',sep='|',index=False)

注意:您不能将“、”“”用作sep参数,因为当您尝试加载txt/csv文件时,它会产生相同的问题

 类似资料:
  • 我有一个相当大的逗号分隔的CSV文件(12GB)。我有4列,其中1列包含带有JSON的嵌套列表。我可以从Excel创建一个连接,它可以正确地读取它(尽管我在那里有一些嵌套列表,这意味着更多的逗号)。然而,当我试图通过spark来实现它时,它在每次出现逗号时都会被切分,这造成了很多混乱。 好的,所以我已经尝试提供一个模式。显然CSV不支持数组类型,所以我不能这么容易地做到这一点。我可以用字符串而不是

  • 问题内容: 我有一个逗号分隔的CSV文件,其中包含NASDAQ符号。我使用扫描仪读取文件 我在第二个字段上遇到异常。问题是,该字段与文件中的其他某些字段一样也包含逗号,例如“ 1-800 FLOWERS.COM,Inc.”: 如何避免这个问题?我的代码是: 谢谢 问题答案: 除非这是家庭作业,否则您不应该自己解析CSV。使用现有库之一。例如: http //commons.apache.org/s

  • 如果内容相同,我想将两个文件合并为一个: first.txt second.txt 后果txt 首先,我想读取文件的内容并将其保存到数组中。但是怎么做呢? 输出: 1,2,3 例如,如何将逗号分隔开来,以便我可以编写?

  • 我有一个源代码,它读取文本文件并存储到一个元组类型的向量中: 包含以下数据: 因此数据由空格+垂直线+空格(多重分隔符)分隔。 如何更改源代码以处理多个分隔符? 注意:如果数据仅用空格隔开,则程序可以工作。

  • 我想把一个多项选择题列表读成一个多维数组在Java,文件的格式是:问题,answer1,answer2,answer3,answer4,CorretAnswer。 一公里有几米?,1,10,100,1000,4,彩虹童谣里哪种颜色不是?,蓝色,粉色,黑色,橙色,3一个足球队在场上有几个队员?,10,11,12,13,2 所以我希望数组的格式为question[][],如果n是1,那么questio

  • 目标:创建一个面向对象的图形Java应用程序,该程序将:读取一个CSV(逗号分隔值)文件,该文件由学生姓名(名字、姓氏)、ID以及内容和交付的初始标记组成(未评估学生使用-1值)。 这是我的代码,但当我点击选择文件。。当它真的应该打开文件并读取数据时,它会显示“预期的名字、姓氏、ID、内容和交付”。但不知何故,它不起作用。在此处输入图像描述 下面是我的代码: 私有类ChooseFileListen