Python 使用Dask读取文件列表
我发现Dask可以通过这种方式读取多个Python 使用Dask读取文件列表,python,python-3.x,csv,dataframe,dask,Python,Python 3.x,Csv,Dataframe,Dask,我发现Dask可以通过这种方式读取多个csv文件: import dask.dataframe as dd df = dd.read_csv('myfiles.*.csv') # doctest: +SKIP 但是,如果我不想加载全部内容,而是加载其中的一些内容,该怎么办 my_files = ['file1.csv', 'file3.csv','file7.csv'] df = dd.read_csv(my_files) 但这不起作用: ValueError:长度不匹配:预期轴有2个元素
csv
文件:
import dask.dataframe as dd
df = dd.read_csv('myfiles.*.csv') # doctest: +SKIP
但是,如果我不想加载全部内容,而是加载其中的一些内容,该怎么办
my_files = ['file1.csv', 'file3.csv','file7.csv']
df = dd.read_csv(my_files)
但这不起作用:
ValueError:长度不匹配:预期轴有2个元素,新值
有三个要素
我的错误是,我的一些
csv
文件的列数不同。
将文件列表读取到一个数据帧的工作方式是:
要获取dask.dataframe
:
df = dd.read_csv(["small1.csv", "small2.csv"])
print(df.shape)
print(type(df))
df = dd.read_csv(["small1.csv", "small2.csv"])
df = df.compute()
print(df.shape)
print(type(df))
输出:
(Delayed('int-863f32f2-a8c3-4ac9-b31f-0186541c347c'), 3)
<class 'dask.dataframe.core.DataFrame'>
(11000, 3)
<class 'pandas.core.frame.DataFrame'>
输出:
(Delayed('int-863f32f2-a8c3-4ac9-b31f-0186541c347c'), 3)
<class 'dask.dataframe.core.DataFrame'>
(11000, 3)
<class 'pandas.core.frame.DataFrame'>
(11000,3)