PythonPandas:导入异质csv-fi的最佳策略

2024-04-25 22:59:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个不均匀的csv文件,我想读入熊猫。文件如下所示:

2016-01-01; 1.00; 2.00
2016-01-02; 1,10; 2.05
2016-01-03; 0.95; 1.90
Some other text in here
2016-01-04; 1.01; 2.04
Some more text there
2016-01-05; 1.06; 2.07

我只需要文本行,这样我就可以跳过以日期开头的行。我尝试了几种策略来读入这些信息并过滤所需的数据,但到目前为止没有任何效果。我知道的是,文本行总是以一个特殊的词开头(在这个例子中是“some”)。但是,没有可以使用的固定行号。你知道吗


Tags: 文件csv数据textin文本信息here
1条回答
网友
1楼 · 发布于 2024-04-25 22:59:46

如果要放弃以单个特殊字符开头的行,可以使用^{}comment参数,如上面注释中@cel所述。你知道吗

否则,可以使用常规的Python逻辑从迭代器中过滤出项,并使用CStringIO。你知道吗

例如,要丢弃以"some"开头的行,可以使用:

import CStringIO

buf = StringIO.StringIO('\n'.join((l for l in open('stuff.txt') if not l.startswith('Some'))))
pd.read_csv(buf, sep=';')

相反,如果您实际上只需要以"some"开头的行,那么使用

buf = StringIO.StringIO('\n'.join((l for l in open('stuff.txt') if l.startswith('Some'))))

相关问题 更多 >