如何在python中将列值转换为新列?

yangyang

我的数据框类似于:

accident_type      office A    office B   office C    information      
1                   0          0         0           number        
1                   0          2         2           fatality        
1                   0          0         0           frequency      
2                   0          0         1           number          
2                   0          0         1           fatality        
2                   0          0         0           frequency 
3                   0          0         0           number   
3                   0          1         1           fatality  
3                   0          0         0           frequency

我想添加更多列以垂直移动事故信息的值,然后我将放置A,B,C处,并将它们放入另一个新列中,如下所示:

accident_type      information         office       number       fatality    frequency     
1                  number              office A        0            0           0
1                  fatality            office B        0            2           0
1                  frequency           office C        0            2           0
2                  number              office A        0            0           0
2                  fatality            office B        0            0           0
2                  frequency           office C        1            1           0 
3                  number              office A        0            0           0 
3                  fatality            office B        0            1           0
3                  frequency           office C        0            1           0

我尝试df.melt,但没有得到预期的结果。谁能帮助我如何在python中制作它?

谢谢

耶斯列尔

我认为您需要DataFrame.melt使用DataFrame.pivot_table

df = (df.melt(['accident_type','information'], 
             var_name='office')
      .pivot_table(index=['accident_type','office'], 
                   columns='information',
                   values='value', 
                   fill_value=0, 
                   aggfunc='sum')
      .reset_index()
      .rename_axis(None, axis=1))
print (df)
   accident_type    office  fatality  frequency  number
0              1  office A         0          0       0
1              1  office B         2          0       0
2              1  office C         2          0       0
3              2  office A         0          0       0
4              2  office B         0          0       0
5              2  office C         1          0       1
6              3  office A         0          0       0
7              3  office B         1          0       0
8              3  office C         1          0       0

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在PostgreSQL中将列值转换为单行值

来自分类Dev

如何在Teradata中将列值转换为列名?

来自分类Dev

如何在Teradata中将列值转换为列名?

来自分类Dev

如何在python熊猫中将数据从行转换为列?

来自分类Dev

如何在Python中将DataFrame列转换为行?

来自分类Dev

如何在Python中将行转换为列

来自分类Dev

如何在SQL中将列旋转到行,还将列标题转换为行值?

来自分类Dev

如何在mysql中将列转换为行(具有相同值的列)

来自分类Dev

如何在R中的数据框中将每个唯一值的列值转换为行?

来自分类Dev

如何在csv文件的列中将最小/最大值转换为JSON格式(如Python中的格式)?

来自分类Dev

如何在熊猫中将两列转换为正式列?

来自分类Dev

如何在熊猫中将多列转换为单独的行/值?

来自分类Dev

如何在 Pandas 中将列值转换为字符串数组?

来自分类Dev

如何在SQL查询中将SQL列的空值转换为0并将varchar转换为十进制

来自分类Dev

如何在Postgresql中将列值移动到新列?

来自分类Dev

如何在R中将多列转换为单独的行

来自分类Dev

如何在Oracle中将行转换为列?

来自分类Dev

如何在Pandas Dataframe中将行转换为列

来自分类Dev

如何在Oracle中将“时间戳记转换为日期”列?

来自分类Dev

如何在SQL Server中将行转换为列?

来自分类Dev

如何在Oracle中将行转换为列?

来自分类Dev

如何在R中将特定行转换为列

来自分类Dev

如何在php mysql中将列数据转换为行

来自分类Dev

如何在awk中将多列转换为连续的lign

来自分类Dev

如何在 spark/scala 中将行转换为列?

来自分类Dev

如何在Python中将列或行矩阵转换为对角矩阵?

来自分类Dev

如何在python中将二维数组的列转换为行?

来自分类Dev

如何在Python中将列数据从文本文件转换为列表?

来自分类Dev

如何在python中将分类列转换为整数列?(使用NaN)

Related 相关文章

  1. 1

    如何在PostgreSQL中将列值转换为单行值

  2. 2

    如何在Teradata中将列值转换为列名?

  3. 3

    如何在Teradata中将列值转换为列名?

  4. 4

    如何在python熊猫中将数据从行转换为列?

  5. 5

    如何在Python中将DataFrame列转换为行?

  6. 6

    如何在Python中将行转换为列

  7. 7

    如何在SQL中将列旋转到行,还将列标题转换为行值?

  8. 8

    如何在mysql中将列转换为行(具有相同值的列)

  9. 9

    如何在R中的数据框中将每个唯一值的列值转换为行?

  10. 10

    如何在csv文件的列中将最小/最大值转换为JSON格式(如Python中的格式)?

  11. 11

    如何在熊猫中将两列转换为正式列?

  12. 12

    如何在熊猫中将多列转换为单独的行/值?

  13. 13

    如何在 Pandas 中将列值转换为字符串数组?

  14. 14

    如何在SQL查询中将SQL列的空值转换为0并将varchar转换为十进制

  15. 15

    如何在Postgresql中将列值移动到新列?

  16. 16

    如何在R中将多列转换为单独的行

  17. 17

    如何在Oracle中将行转换为列?

  18. 18

    如何在Pandas Dataframe中将行转换为列

  19. 19

    如何在Oracle中将“时间戳记转换为日期”列?

  20. 20

    如何在SQL Server中将行转换为列?

  21. 21

    如何在Oracle中将行转换为列?

  22. 22

    如何在R中将特定行转换为列

  23. 23

    如何在php mysql中将列数据转换为行

  24. 24

    如何在awk中将多列转换为连续的lign

  25. 25

    如何在 spark/scala 中将行转换为列?

  26. 26

    如何在Python中将列或行矩阵转换为对角矩阵?

  27. 27

    如何在python中将二维数组的列转换为行?

  28. 28

    如何在Python中将列数据从文本文件转换为列表?

  29. 29

    如何在python中将分类列转换为整数列?(使用NaN)

热门标签

归档