0

我正在尝试使用 pandas 分块读取 csv 文件,但只想获取列的子集。我正在尝试使用

df = pandas.io.parsers.read_table(myData, chunksize=1000)
df = df[id_fields + [time_field] + value_fields]

但这给了我以下错误:

TextFileReader' object has no attribute '__getitem__'

如果我删除 chunksize 位,相同的代码将起作用:

df = pandas.io.parsers.read_table(myData)
df = df[id_fields + [time_field] + value_fields]

任何想法如何解决这个问题?

谢谢,安妮

4

1 回答 1

0

不一定是最聪明的解决方案(例如,如果大多数块对您无用),但以下应该可以满足您的需求:

it = pandas.read_table(myData, chunksize=1000)
df = pandas.concat([chunk[id_fields + [time_field] + value_fields]
                    for chunk in it])
于 2016-01-28T09:57:29.587 回答