我有一个大约10 GB的巨大csv文件,如果尝试加载到内存中会收到错误消息。
我需要为数据框的每一列计算唯一元素的数量。我怎样才能做到这一点?
您可以依次加载每个col,然后致电.nunique
:
In [227]:
import io
t="""a,b,c
0,1,1
0,2,1
1,3,1
2,4,1
3,5,6"""
# get the columns first
cols = pd.read_csv(io.StringIO(t), nrows=1).columns
d = {}
for col in cols:
df = pd.read_csv(io.StringIO(t), usecols=col)
d[col] = df[col].nunique()
d
Out[227]:
{'a': 4, 'b': 5, 'c': 2}
然后应该为每列生成唯一值数量的字典
假设您可以一次从10GB文件中加载一列
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句