我对熊猫没有兴趣。我有这个Data.Frame:
category1 category2 numeric
0 grey complete 1
1 grey complete 2
2 NaN incomplete 3
3 blue complete 4
我想转动表格。
p.pivot_table(df, index = 'category1', columns = 'category2', values = 'numeric', aggfunc = 'count')
那没关系,但我需要在category1中添加一些类别,然后我这样做:
df['category1_'] = p.Categorical(df['category1'], categories = ['grey','blue','red'])
现在得到:
p.pivot_table(df, index = 'category1_', columns = 'category2', values = 'numeric', aggfunc = 'count')
ValueError: Cannot convert NA to integer
我认为分类系列中的NaN值存在问题,但是NaN下降了
df2 = df.dropna()
p.pivot_table(df2, index = 'category1_', columns = 'category2', values = 'numeric', aggfunc = 'count')
C:\Users\diego_000\Anaconda3\lib\site-packages\pandas\core\common.py in _astype_nansafe(arr, dtype, copy)
2671
2672 if np.isnan(arr).any():
-> 2673 raise ValueError('Cannot convert NA to integer')
2674 elif arr.dtype == np.object_ and np.issubdtype(dtype.type, np.integer):
2675 # work around NumPy brokenness, #1987
ValueError: Cannot convert NA to integer
我不知道如何解决这个问题:使用pivot_table的分类数据在存在NaN值时不会保存类别,排序和出错。
我是熊猫新手吗?或大熊猫分类还在早期?
提前致谢。