CSV块或离线

时间:2017-01-25 10:47:21

标签: python pandas tensorflow

我想从块中生成一个df,例如:

chunksize = 1
df_list = []
for chunk in pd.read_csv(filename, chunksize=chunksize):
    df_list.append(chunk)
data_raw = pd.concat(df_list)

然而,计算机的RAM仅为3GB,CSV文件超过3GB,如下所示:

   a    b  c      d       e        f       g        h  i   j    ...     \
0  2    2  0  8.17680  4.76726  25.6957  1.13633    0  3  4.8   ...      
1  3    0  0  8.22718  2.35340  15.2934  1.13633    0  3  4.8   ...

我想通过块从文件生成一个df,以便将数据分开训练X,在某些字段上测试y,例如" a-e"训练X," g-h"在那之后测试y。单独函数的输入类型是df。 你能举一些具体的例子来从块或csv离线生成df吗?

1 个答案:

答案 0 :(得分:1)

您可以尝试使用pandas.read_csvdocumentation)。您要查找的是usecols参数,您可以在其中指定要加载的列,例如:列车集['a', 'b', 'c', 'd']

同时指定chunksize可能会有所帮助。以下是更多信息:https://pandas-docs.github.io/pandas-docs-travis/io.html#iterating-through-files-chunk-by-chunk