我正在使用下面的代码将csv文件转换为feather类型,
import pandas as pd
import feather
df = pd.read_csv('myfile.csv')
feather.write_dataframe(df, 'myfile.feather')
Run Code Online (Sandbox Code Playgroud)
myfile.csv结束了2G,当我运行代码时,我得到如下错误信息:
File "table.pxi", line 705, in pyarrow.lib.RecordBatch.from_pandas
File "table.pxi", line 739, in pyarrow.lib.RecordBatch.from_arrays
TypeError: Cannot convert pyarrow.lib.ChunkedArray to pyarrow.lib.Array
Run Code Online (Sandbox Code Playgroud)
我看过类似的问题,并发现feather最近开始支持超过2G的大文件.但我的羽毛版本是0.4,所以我认为我的一个已经能够支持大文件.为什么我会收到此错误?任何想法将不胜感激,谢谢.
我有一个非常大的 csv 文件millions of rows和一个我需要的行号列表。
rownumberList = [1,2,5,6,8,9,20,22]
Run Code Online (Sandbox Code Playgroud)
我知道有一种叫做skiprows可以帮助跳过几行的reading csv file东西
df = pd.read_csv('myfile.csv',skiprows = skiplist)
#skiplist would contain the total row list deducts rownumberList
Run Code Online (Sandbox Code Playgroud)
但是,由于 csv 文件非常大,直接选择我需要的行可能会更有效率。所以我想知道select rows使用时有什么方法read_csv吗?之后不要尝试选择行dataframe,因为我尽量减少读取文件的时间。谢谢。