【问题标题】:cudf read csv file error : total size of strings is too large for cudf columncudf 读取 csv 文件错误:字符串的总大小对于 cudf 列来说太大了
【发布时间】:2021-09-04 18:07:19
【问题描述】:

我用colab,用一个巨大的csv文件(3GB,17540000条记录)运行cudf.read_csv(),但是结果是错误的。

import cudf
import numpy as np
import pandas as pd
import csv
g_df = cudf.read_csv('drive/MyDrive/m1.csv',escapechar="\\")

错误信息是

RuntimeError                              Traceback (most recent call last)
<ipython-input-9-efc4c69ac697> in <module>()
----> 1 g_df = cudf.read_csv('drive/MyDrive/m1.csv',escapechar="\\")
      2 g_df.shape

1 frames
/usr/local/lib/python3.7/site-packages/cudf/io/csv.py in read_csv(filepath_or_buffer, lineterminator, quotechar, quoting, doublequote, header, mangle_dupe_cols, usecols, sep, delimiter, delim_whitespace, skipinitialspace, names, dtype, skipfooter, skiprows, dayfirst, compression, thousands, decimal, true_values, false_values, nrows, byte_range, skip_blank_lines, parse_dates, comment, na_values, keep_default_na, na_filter, prefix, index_col, **kwargs)
    100         na_filter=na_filter,
    101         prefix=prefix,
--> 102         index_col=index_col,
    103     )
    104 

cudf/_lib/csv.pyx in cudf._lib.csv.read_csv()

RuntimeError: cuDF failure at: ../include/cudf/strings/detail/strings_column_factories.cuh:75: total size of strings is too large for cudf column

【问题讨论】:

标签: python google-colaboratory cudf


【解决方案1】:

您可以使用 Pandas 将您的 CSV 读入卡盘中,我在这里提供了一个示例表格 How do I read a large csv file with pandas?

chunksize = 10 ** 6
with pd.read_csv(filename, chunksize=chunksize) as reader:
    for chunk in reader:
        process(chunk)

我会建议你把它读入chuck,如果你不这样做,它需要非常多的内存,如果你读入chuck,这样可以节省很多内存。

【讨论】:

    猜你喜欢
    • 2013-06-15
    • 2013-06-07
    • 1970-01-01
    • 1970-01-01
    • 2022-12-20
    • 2012-07-22
    • 2020-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多