包含pandas中列上的行数据

  • 本文关键字:数据 pandas 包含 pandas
  • 更新时间 :
  • 英文 :


我有一个像第一个表一样的数据集,每一行都有一个性别值。

输入图片描述

我想要一个输出表,像第二个屏幕截图,性别不是一个列。其余列的所有数据都用&;female &;分隔开和";male"具有两个主列和一个汇总汇总列。我怎样才能在熊猫身上得到这些呢?

输入图片描述

您需要使用pandas.pivot,这与Excel中的方式相似。下面的代码将为您提供所需的内容。我在这里将空格(NaN)重命名为0

table = pd.pivot_table(
df,
values='score',
index=['job'],
columns=['gender'],
aggfunc=np.sum)
table.columns.name = None  # remove categories
table = table.reset_index()
table = table.fillna(0)
table ['Total Score'] = table.female + table.male
table

job       female    male    Total Score
0   Accountant  358.0   0.0     358.0
1   Engineer    123.0   230.0   353.0
2   Lawyer     320.0    103.0   423.0
3   Manager    294.0    490.0   784.0
4   Sales        0.0    82.0    82.0
5   Waiter     524.0    436.0   960.0

最新更新