7

我正在尝试使用 dask 而不是 pandas,因为我有 2.6gb csv 文件。我加载它,我想删除一列。但似乎删除方法 df.drop('column') 或切片 df[ : , :-1]

尚未实施。是这种情况还是我只是错过了什么?

4

2 回答 2

9

我们在这个 PRdrop中实现了该方法。这从 dask 0.7.0 开始可用。

In [1]: import pandas as pd

In [2]: df = pd.DataFrame({'x': [1, 2, 3], 'y': [3, 2, 1]})

In [3]: import dask.dataframe as dd

In [4]: ddf = dd.from_pandas(df, npartitions=2)

In [5]: ddf.drop('y', axis=1).compute()
Out[5]: 
   x
0  1
1  2
2  3

以前也可以对列名使用切片;当然,如果您有很多列,这可能就不那么吸引人了。

In [6]: ddf[['x']].compute()
Out[6]: 
   x
0  1
1  2
2  3
于 2015-08-07T04:41:29.050 回答
0

这应该有效:

print(ddf.shape)
ddf = ddf.drop(columns, axis=1)
print(ddf.shape)
于 2021-08-24T11:28:20.413 回答