【问题标题】:Python Pandas pivot_table - Count of values in one column [duplicate]Python Pandas pivot_table - 一列中的值计数[重复]
【发布时间】:2021-10-21 15:53:24
【问题描述】:

我有一个 DataFrame(泰坦尼克号乘客列表中的 28 行),其中有一列“Sex”,包含两个值,“Male”、“Female”。我想计算男性/女性的数量

输出应在第二列中显示“性别”作为行标签(索引)和计数(男性/女性)

df.pivot_table(index ="Sex", values ="Sex", aggfunc='count')

这会返回“ValueError: Grouper for 'Sex' not 1-dimensional”错误。

请指导

【问题讨论】:

  • 能否将数据框粘贴到问题中?
  • 如果您需要帮助将您的 DataFrame 的一个小样本格式化为 SO 的可复制代码,请参阅How to make good reproducible pandas examples
  • df.pivot_table(index ="Sex",values="PassengerId", aggfunc='count') - 这可以工作并给出结果(即当索引和值是不同的字段时。可以吗不能只使用“Sex”列吗?

标签: python pandas


【解决方案1】:

只是df['Sex'].value_counts()

【讨论】:

  • 谢谢,这确实回答了问题并给出了预期的结果。解决方案的 pivot_table 版本是什么?
  • @user1955215 没有。查看df.pivot_table(columns="sex", aggfunc='count'),然后查看df.pivot_table(index="sex", aggfunc='count')。您会看到索引和值不能具有相同的列值。
  • @TrentonMcKinney,感谢您对“您不能拥有相同的列值”的澄清。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-22
  • 1970-01-01
  • 2019-11-10
  • 1970-01-01
相关资源
最近更新 更多