【问题标题】:Transposing the data in python在python中转置数据
【发布时间】:2016-10-31 19:00:11
【问题描述】:

我的数据看起来像这样

卡斯特 c1 p1 c2 p2 c3 p3 1 2 3 4 5 6 7 8 9 10 11 12 13 14

我想转置这些数据并以以下格式返回:

客户 c p 1 2 3 1 4 5 1 6 7 8 9 10 8 11 12 8 13 14

请有人建议使用什么?

【问题讨论】:

    标签: python python-2.7 python-3.x numpy pandas


    【解决方案1】:

    如果您的数据位于 pandas 数据框中。您可以使用此代码:

    import pandas as pd
    df.transpose()# df is the name of data frame.
    

    也可以直接使用:

    df.T#In this case data frame name is df.T means transpose.
    

    我认为它会对你有所帮助。

    【讨论】:

      【解决方案2】:

      如果获取列表中的数据,则可以使用 csv。

      import csv
      
      f = open('name.csv','wb')
      csv = csv.reader(f,delimiter=';')
      
      csv.writerow([list[0]]+[list[1]]+...)
      

      【讨论】:

        【解决方案3】:

        您可以将函数lreshapesort_values 一起使用:

        print (pd.lreshape(df, {'c': ['c1', 'c2', 'c3'], 'p': ['p1', 'p2', 'p3']})
                 .sort_values('cust'))
        
           cust   c   p
        0     1   2   3
        2     1   4   5
        4     1   6   7
        1     8   9  10
        3     8  11  12
        5     8  13  14
        

        【讨论】:

        • 非常感谢您的帮助!还有另一个功能'melt'可以解决这个问题。
        • 完全正确 - 但有点复杂 - see.
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-11-19
        • 2019-12-03
        • 2019-02-11
        • 2014-03-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多