簡體   English   中英

在 Python Pandas 中更改數據框

[英]Changing Dataframes in Python Pandas

{'id':{0:'x1',1:'x2',2:'x3',3:'x4',4:'x5',5:'x6',6:'x7',7: 'x8', 8: 'x9', 9: 'x10'}, 'trt': {0: 'cnt', 1: 'cnt', 2: 'tr', 3: 'tr', 4: 'tr ', 5: 'cnt', 6: 'tr', 7: 'tr', 8: 'cnt', 9: 'cnt'}, 'work.T1': {0: 0.6516556669957936, 1: 0.567737752571702, 2: 0.1135089821182191, 3: 0.5959253052715212, 4: 0.3580499750096351, 5: 0.4288094183430075, 6: 0.0519033221062272, 7: 0.2641776674427092, 8: 0.3987907308619469, 9: 0.8361341434065253}, 'play.T1': {0: 0.8647212258074433, 1: 0.6153524168767035, 2: 0.7751098964363337, 3: 0.3555686913896352, 4: 0.4058499720413238, 5: 0.7066469138953835, 6: 0.8382876652758569, 7: 0.2395891312044114, 8: 0.7707715332508087, 9: 0.3558977444190532}, 'talk.T1': {0: 0.5355970377568156, 1: 0.0930881295353174, 2: 0.169803041499108, 3: 0.8998324507847428, 4: 0.4226376069709658, 5: 0.7477464678231627, 6: 0.8226525799836963, 7: 0.9546536463312804, 8: 0.6854445093777031, 9: 0.5005032296758145}, 'work.T2': {0: 0.2754838624969125, 1: 0.2289039448369294, 2: 0.014433 9059479534, 3: 0.7289645625278354, 4: 0.2498804717324674, 5: 0.1611832766793668, 6: 0.0170426501426845, 7: 0.4861003451514989, 8: 0.1029001718852669, 9: 0.8015470046084374}, 'play.T2': {0: 0.3543280649464577, 1: 0.9364325392525644, 2: 0.2458663922734558, 3: 0.4731414613779634, 4: 0.191560871200636, 5: 0.5832219698932022, 6: 0.4594731898978352, 7: 0.467434047954157, 8: 0.3998325555585325, 9: 0.5052855962421745}, 'talk.T2': {0: 0.0318881559651345, 1: 0.1144675880204886, 2: 0.468935475917533, 3: 0.3969867376144975,4:0.8336191941052675,5:0.7611217433586717,6:0.5735644489055425,7:0.44475055554}

mydt = pd.DataFrame(dt, columns = ['id', 'trt', 'work.T1', '', 'play.T1', 'talk.T1''work.T2', '', 'play .T2','談話.T2'])

所以我有上面的數據集。 如何轉換上述數據集,使其看起來如下所示,其中每個唯一 ID 在 T1 和 T2 都有一個觀察值? 請告訴我。

所需格式

您可以使用pd.wide_to_long

names = ['play', 'talk', 'work']
out = (pd.wide_to_long(df, names, i='id', j='time', sep='.', suffix='T\d')
         .sort_index().reset_index())

輸出:

>>> out
    id time  trt      play      talk      work
0   x1   T1  cnt  0.010651  0.400500  0.774567
1   x1   T2  cnt  0.758084  0.147504  0.831137
2   x2   T1   tr  0.540774  0.960239  0.332556
3   x2   T2   tr  0.882142  0.884740  0.020044
4   x3   T1   tr  0.184434  0.842003  0.909759
5   x3   T2   tr  0.108465  0.234251  0.954427
6   x4   T1   tr  0.457186  0.567753  0.095170
7   x4   T2   tr  0.553769  0.768538  0.401176
8   x5   T1  cnt  0.787308  0.036411  0.179075
9   x5   T2  cnt  0.002033  0.745652  0.638177
10  x6   T1   tr  0.954682  0.163233  0.074820
11  x6   T2   tr  0.044682  0.875726  0.538481

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM