【发布时间】:2018-12-12 08:49:39
【问题描述】:
我正在尝试读取 csv 文件,但我的 csv 文件不同。有些有不同的格式,有些有其他的。我正在尝试添加控件,这样我就不需要编辑我的代码或我的输入文件。
我的问题是,其中一些 csv 文件在列标题上方有一行字符串。一个例子:
Created on 12-11-2018,CryptoDataDownload.com
Date,Symbol,Open,High,Low,Close,Volume From,Volume To
2018-12-11 11-AM,ADABTC,8.6e-06,8.61e-06,8.55e-06,8.57e-06,301141.7,2.59
2018-12-11 10-AM,ADABTC,8.69e-06,8.72e-06,8.6e-06,8.6e-06,236949.63,2.05
如果我导入它,分隔符将使用第一行并将文件分成两列,分别为 Created on 12-11-2018 和 CryptoDataDownload.com。
这就是df.head() 的样子:
Created on 12-11-2018 CryptoDataDownload.com
Date Symbol Open High Low Close Volume From Volume To
2018-12-11 11-AM ADABTC 8.6e-06 8.61e-06 8.55e-06 8.57e-06 301141.7 2.59
2018-12-11 10-AM ADABTC 8.69e-06 8.72e-06 8.6e-06 8.6e-06 236949.63 2.05
2018-12-11 09-AM ADABTC 8.7e-06 8.7e-06 8.62e-06 8.69e-06 509311.39 4.41
2018-12-11 08-AM ADABTC 8.69e-06 8.7e-06 8.63e-06 8.7e-06 111367.34 0.9656
我想检查这个文件是否有这一行,如果有就跳过它。
我该怎么做?
【问题讨论】:
-
那么,您是否尝试将
skiprows=1添加到read_csv? -
@coldspeed 并非我所有的文件都有这一行,所以我需要先检查这一行是否存在。否则,我将删除我的列标题
-
您的所有数据帧是否都具有相同的标头,或者可能不同?是否有与这些标头关联的模式(例如,“created on...”)?
-
标题也不同,但我在导入后将它们编辑为相同
-
我建议将中断移动到一个缩进级别,因为您似乎只需要检查第一行。