[英]Merge cells in pandas if values in two column is same
我在數據框方面有以下數據
data = pd.DataFrame({'colA': ['a', 'c', 'a', 'e', 'c', 'c'], 'colB': ['b', 'd', 'b', 'f', 'd', 'd'], 'colC':['SD100', 'SD200', 'SD300', 'SD400', 'SD500', 'SD600']})
我想要附加的輸出[在此處輸入圖像描述][2]
我想在 python 中使用 Pandas 數據框來實現這一點 有人可以幫助我嗎?
你可以試試:
Column A Column B Column C
0 a b SD100
1 c d SD200
2 a b SD300
3 e f SD400
4 c d SD500
5 c d SD600
>>> df.groupby(['Column A', 'Column B']).agg(list)
Column C
Column A Column B
a b [SD100, SD300]
c d [SD200, SD500, SD600]
e f [SD400]
我不知道你為什么要制作 multindex,但你可以簡單地sort_values
或使用groupby
。
import pandas as pd
df = pd.DataFrame({"ColumnA":['a','c','a','e','c','c'],
"ColumnB":['b','d','b','f','d','d'],
"ColumnC":['SD100','SD200','SD300','SD400','SD500','SD600']})
print(df)
ColumnA ColumnB ColumnC
0 a b SD100
1 c d SD200
2 a b SD300
3 e f SD400
4 c d SD500
5 c d SD600
df = df.sort_values(by=['ColumnA','ColumnB'])
df.set_index(['ColumnA', 'ColumnB','ColumnC'], inplace=True)
df
這會將您的數據更新為您想要的
data=data.groupby(['colA','colB']).agg(list)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.