旋转列';值到值为1和0的列的标题(相应)[python]

旋转列';值到值为1和0的列的标题(相应)[python],python,pandas,database,dataframe,matrix,Python,Pandas,Database,Dataframe,Matrix,我得到了一列表格: 0 q4 1 4 2 3 3 1 4 2 5 1 6 5 7 1 8 3 该列表示用户对5个选项(1-5)问题的答案 我想把它转换成一个由5列组成的矩阵,其中索引是5个可能的答案,根据用户给定的答案,值是1或0 我想要一个如下形式的矩阵: 0 q4_1 q4_2 q4_3 q4_4

我得到了一列表格:

0           q4
1           4
2           3   
3           1
4           2
5           1
6           5
7           1
8           3
该列表示用户对5个选项(1-5)问题的答案

我想把它转换成一个由5列组成的矩阵,其中索引是5个可能的答案,根据用户给定的答案,值是1或0

我想要一个如下形式的矩阵:

0   q4_1  q4_2  q4_3  q4_4 q4_5
1   Nan    Nan   Nan   1    Nan
2   Nan    Nan   1    Nan   Nan
3   1      Nan   Nan  Nan   Nan
4   Nan    1     Nan  Nan   Nan
5   1      Nan   Nan  Nan   Nan
输出:

>>> print(df)

   q4_1  q4_2  q4_3  q4_4  q4_5
0     0     0     0     1     0
1     0     0     1     0     0
2     1     0     0     0     0
3     0     1     0     0     0
4     1     0     0     0     0
5     0     0     0     0     1
6     1     0     0     0     0
7     0     0     1     0     0
输出:

>>> print(df)

   q4_1  q4_2  q4_3  q4_4  q4_5
0     0     0     0     1     0
1     0     0     1     0     0
2     1     0     0     0     0
3     0     1     0     0     0
4     1     0     0     0     0
5     0     0     0     0     1
6     1     0     0     0     0
7     0     0     1     0     0

我认为支点是一个方向。您必须使用新表中所需的信息预填充df。 另外,我不明白为什么您只需要5行,但我也在
iloc
中添加了它。如果删除它,您将拥有整个索引的此数据(最多8个)

印刷品

q4     1    2    3    4   5
index                        
1    NaN  NaN  NaN  1.0 NaN
2    NaN  NaN  1.0  NaN NaN
3    1.0  NaN  NaN  NaN NaN
4    NaN  1.0  NaN  NaN NaN
5    1.0  NaN  NaN  NaN NaN

我认为支点是一个方向。您必须使用新表中所需的信息预填充df。 另外,我不明白为什么您只需要5行,但我也在
iloc
中添加了它。如果删除它,您将拥有整个索引的此数据(最多8个)

印刷品

q4     1    2    3    4   5
index                        
1    NaN  NaN  NaN  1.0 NaN
2    NaN  NaN  1.0  NaN NaN
3    1.0  NaN  NaN  NaN NaN
4    NaN  1.0  NaN  NaN NaN
5    1.0  NaN  NaN  NaN NaN

pd.get_dummies(df['q4'])
感谢您的评论。如果可能的话,你能告诉我怎样才能得到5个答案中的某些答案,而不是全部答案@QuangHoang <代码> Pd.GET*Dimies(DF[Q4')]。ReDe指标([1,2,3,4,5],轴= 1)< /代码>。它实际上返回了4个CULL(在我不想考虑第五个答案的情况下)的一个矩阵。QuangHoang
pd.get_dummies(df['q4'])
感谢您的评论。如果可能的话,你能告诉我怎样才能得到5个答案中的某些答案,而不是全部答案@QuangHoang <代码> Pd.GET*Dimies(DF[Q4')]。ReDe指标([1,2,3,4,5],轴= 1)< /代码>。它实际上返回了4个CULL(在我不想考虑第五个答案的情况下)的一个矩阵。广港