gpt4 book ai didi

python - 创建一个 pandas 计数数据框

转载 作者:太空狗 更新时间:2023-10-29 21:34:06 24 4
gpt4 key购买 nike

我想创建一个包含两列的 pandas 数据框,第一列是我的一个列的唯一值,第二个是唯一值的计数。

我看过许多描述如何获取计数的帖子(例如 here),但我遇到的问题是当我尝试创建数据框时,列值成为我的索引。

示例数据:df = pd.DataFrame({'Color': ['Red', 'Red', 'Blue'], 'State': ['MA', 'PA', 'PA' ]})。我想以这样的数据框结束:

   Color Count
0 Red 2
1 Blue 1

我尝试了以下方法,但在所有情况下,索引最终都为 Color 并且 Count 是数据框中唯一的列。

尝试 1:

df2 = pd.DataFrame(data=df['Color'].value_counts())
# And resetting the index just gets rid of Color, which I want to keep
df2 = df2.reset_index(drop=True)

尝试 2:

df3 = df['Color'].value_counts()
df3 = pd.DataFrame(data=df3, index=range(df3.shape[0]))

尝试 3:

df4 = df.groupby('Color')
df4 = pd.DataFrame(df4['Color'].count())

最佳答案

另一种方法是使用 value_counts:

In [10]: df = pd.DataFrame({'Color': ['Red', 'Red', 'Blue'], 'State': ['MA', 'PA', 'PA']})

In [11]: df.Color.value_counts().reset_index().rename(
columns={'index': 'Color', 0: 'count'})
Out[11]:
Color count
0 Red 2
1 Blue 1

关于python - 创建一个 pandas 计数数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31076698/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com