我有一个从 csv 文件创建的 dask 数据框并len(daskdf)返回 18000 但是当ddSample = daskdf.sample(2000)我收到错误时
ValueError: Cannot take a larger sample than population when 'replace=False'
Run Code Online (Sandbox Code Playgroud)
如果数据框大于样本大小,我可以在不替换的情况下进行采样吗?
示例方法仅支持frac=关键字参数。请参阅API 文档
您得到的错误来自 Pandas,而不是 Dask。
In [1]: import pandas as pd
In [2]: df = pd.DataFrame({'x': [1]})
In [3]: df.sample(frac=2000, replace=False)
ValueError: Cannot take a larger sample than population when 'replace=False'
Run Code Online (Sandbox Code Playgroud)
正如 Pandas 错误所暗示的那样,考虑替换抽样
In [4]: df.sample(frac=2, replace=True)
Out[4]:
x
0 1
0 1
In [5]: import dask.dataframe as dd
In [6]: ddf = dd.from_pandas(df, npartitions=1)
In [7]: ddf.sample(frac=2, replace=True).compute()
Out[7]:
x
0 1
0 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16989 次 |
| 最近记录: |