使用三列的分组问题创建一个数据框

yan*_*234 4 python pivot dataframe pandas

我有以下数据帧:

       A               B                  C
  I am motivated     Agree                4
  I am motivated     Strongly Agree       5
  I am motivated     Disagree             6
  I am open-minded   Agree                4
  I am open-minded   Disagree             4
  I am open-minded   Strongly Disagree    3
Run Code Online (Sandbox Code Playgroud)

如果列A是问题,则列B是答案,列C是A列中问题的"强烈同意","同意","不同意"和"非常不同意"的频率.

如何将其转换为以下数据帧?

                  Strongly Agree    Agree     Disagree   Strongly Disagree
I am motivated        5               4           6             0
I am open-minded      0               4           4             3
Run Code Online (Sandbox Code Playgroud)

我试着在groupby()中查看其他帖子中的列,但无法弄明白.使用python 3

Max*_*axU 5

使用DataFrame.pivot_table()方法:

In [250]: df.pivot_table(index='A', columns='B', values='C', aggfunc='sum', fill_value=0)
Out[250]:
B                 Agree  Disagree  Strongly Agree  Strongly Disagree
A
I am motivated        4         6               5                  0
I am open-minded      4         4               0                  3
Run Code Online (Sandbox Code Playgroud)