如何在python中读取分号分隔的文本文件并转换为csv

问题描述

我是一个完整的初学者,感谢任何人对此查询的帮助。

我有一个文本文件,其中包含以下内容

enter image description here

或以下:(由于某种原因,这里的新行不清楚)

1/03/2021;6:59:59 AM.0;ServerLogic/Retain/GWSF_PPC1_LR;1.0
1/03/2021;7:00:00 AM.0;ServerLogic/Retain/GWSF_PPC1_LR;1.0
1/03/2021;6:00:01 AM.0;ServerLogic/Global/GWSF_PPC1_METF;0.0
1/03/2021;6:00:02 AM.0;ServerLogic/Global/GWSF_PPC1_METF;0.0
1/03/2021;7:29:58 AM.0;ServerLogic/Retain/GWSF_PPC1_LR;1.0
1/03/2021;7:29:59 AM.0;ServerLogic/Retain/GWSF_PPC1_LR;1.0
1/03/2021;7:30:00 AM.0;ServerLogic/Retain/GWSF_PPC1_LR;1.0
1/03/2021;7:00:01 AM.0;ServerLogic/Global/GWSF_PPC1_METF;0.0
1/03/2021;7:00:02 AM.0;ServerLogic/Global/GWSF_PPC1_METF;0.0

使用Google Collab,我想打开文件,将内容转换成一个以“;”为分隔符的表格,然后添加一个标题,这样它就变成了一个如下所示的数据框:

enter image description here

如果上面的图片不起作用,基本上想象一下下面是一个表格:

Date    Hour    Ignore  Parameter   Value

01-03-21    6:59:59 AM  0   ServerLogic/Retain/GWSF_PPC1_LR 1.0
01-03-21    7:00:00 AM  0   ServerLogic/Retain/GWSF_PPC1_LR 1.0
01-03-21    6:00:01 AM  0   ServerLogic/Global/GWSF_PPC1_METF   0.0
01-03-21    6:00:02 AM  0   ServerLogic/Global/GWSF_PPC1_METF   0.0
01-03-21    7:29:58 AM  0   ServerLogic/Retain/GWSF_PPC1_LR 1.0
01-03-21    7:29:59 AM  0   ServerLogic/Retain/GWSF_PPC1_LR 1.0
01-03-21    7:30:00 AM  0   ServerLogic/Retain/GWSF_PPC1_LR 1.0
01-03-21    7:00:01 AM  0   ServerLogic/Global/GWSF_PPC1_METF   0.0
01-03-21    7:00:02 AM  0   ServerLogic/Global/GWSF_PPC1_METF   0.0

接下来,我想过滤包含“PPC1_METF”的“参数”列,因此输出变为:

enter image description here

01-03-21    6:00:01 AM  0   ServerLogic/Global/GWSF_PPC1_METF   0.0
01-03-21    6:00:02 AM  0   ServerLogic/Global/GWSF_PPC1_METF   0.0
01-03-21    7:00:01 AM  0   ServerLogic/Global/GWSF_PPC1_METF   0.0
01-03-21    7:00:02 AM  0   ServerLogic/Global/GWSF_PPC1_METF   0.0

最后,创建 csv 文件输出

我尝试过的是以下代码

    with open('gdrive_url+file_ppc','r') as in_file:
     stripped = (line.strip() for line in in_file)
     lines = (line.split(",") for line in stripped if line)
     with open('gdrive_url+file_ppc','w') as out_ppc:
       writer = csv.writer(out_ppc)
       writer.writerow(lines)

但我目前遇到以下代码错误

    with open('gdrive_url+file_ppc','r') as in_file:"

错误如下:

    [Errno 2] No such file or directory: 'gdrive_url+file_ppc'

先把文本转成csv会更好吗?

非常感谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)