[英]Python. Merge repeated columns
我必須從包含重復一些列的文件創建一個dataframe
,並按如下所示拆分它們的值:
如您所見,例如c1
分為3部分或c2
分為2
我想要得到的是這樣的:
我知道我可以通過合並列:
df.sum(index=1) or df.max(index=1)
但不知道如何指定要對特定列執行的操作。
另一種可能性是創建僅包含重復列的數據框,應用sum或max,然后合並所有內容。
但是我想知道是否還有一些“丑陋”的東西。
您可以通過一種更為簡單的方式使用groupby。
In [1]: df = pd.DataFrame(np.random.random_integers(0,10,(5,8)), columns=['C1','C2','C3','C1','C4','C1','C5','C2'])
In [2]: df
Out[2]:
C1 C2 C3 C1 C4 C1 C5 C2
0 5 0 9 1 7 3 3 8
1 3 1 10 7 1 2 3 8
2 1 0 0 0 4 10 6 10
In [3]: # Groupby level 0 on axis 1 (columns) and apply a sum
df.groupby(level=0, axis=1).sum()
Out[3]:
C1 C2 C3 C4 C5
0 9 8 9 7 3
1 12 9 10 1 3
2 11 10 0 4 6
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.