我有一个小数据集,我需要对其执行计数值操作。数据集看起来像这样:
A B
1 67
1 56
1 23
2 22
2 12
3 78
columns = ["Count"]
g = pd.DataFrame(A.value_counts(), index=False, columns=columns)
所以我想做的是尝试计算 A 列中每个唯一值的实例数并创建一个新的 DataFrame,我尝试使用 A.value_counts()
,但是当我尝试放入这个新列,我得到的第一个值为 NaN。可能是什么问题?这是我得到的:
A Count
1 NaN
2 3
3 2
我得到的第一个值为 NaN,之后显示正常输出。可能是什么原因?我希望输出是这样的:
A Count
1 3
2 2
3 1
我应该如何避免得到这个 NaN 值?数据集中的索引从 0 开始。
最佳答案
你通常会这样做
In [2334]: df.A.value_counts().reset_index(name='Count').rename(columns={'index': 'A'})
Out[2334]:
A Count
0 1 3
1 2 2
2 3 1
或者,
In [2335]: df.groupby('A').size().reset_index(name='Count')
Out[2335]:
A Count
0 1 3
1 2 2
2 3 1
详细信息
In [2337]: df
Out[2337]:
A B
0 1 67
1 1 56
2 1 23
3 2 22
4 2 12
5 3 78
关于python - 将 NaN 作为 value_counts() 的第一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46059632/