如何重新排列此数据框?

时间:2018-12-11 09:09:41

标签: python pandas python-2.7

早上好。

我有一个如下数据框:

df = 
    time_A      time_B   
0    15          5        
1    20          3         

我想添加重新排序,使其最终看起来像这样:

df_new = 
    Data        Time  
0    time_A      15         
1    time_A      20         
2    time_B      5     
3    time_B      3

索引顺序根本没有关系,只想知道如何对数据框“重新排序”。我尝试了df.pivot,df.transpose,df.stack的不同版本...但是我无法正常工作。

谢谢。

1 个答案:

答案 0 :(得分:0)

data = {
    'time_A' : [15, 20],
    'time_B' : [5, 3]
}

df = pd.DataFrame(data)
print(df)
#    time_A  time_B
# 0      15       5
# 1      20       3

ndf = df.stack()\
        .reset_index()\
        .drop('level_0', axis=1)\
        .rename(columns={'level_1' : 'Data', 0 : 'Time'})
print(ndf)
#      Data  Time
# 0  time_A    15
# 1  time_B     5
# 2  time_A    20
# 3  time_B     3