我認爲這很簡單,但我今天無法弄清楚這一點,需要一些幫助。將數據幀的行與字符串列結合起來
我有一個熊貓數據幀:
df = pd.DataFrame({
'id': [0, 0, 1, 1, 2],
'q.name':['A'] * 3 + ['B'] * 2,
'q.value':['A1','A2','A3','B1','B2'],
'w.name':['Q', 'W', 'E', 'R', 'Q'],
'w.value':['B1','B2','C3','C1','D2']
})
,看起來像這樣
id q.name q.value w.name w.value
0 0 A A1 Q B1
1 0 A A2 W B2
2 1 A A3 E C3
3 1 B B1 R C1
4 2 B B2 Q D2
我期待將其轉換爲
id q.name q.value w.name w.value
0 0 A A A1 A2 Q W B1 B2
1 1 A B A3 B1 E R C3 C1
2 2 B B2 Q D2
我想pd.DataFrame(df.apply(lambda s: s.str.cat(sep=" ")))
但是這並沒有給我想要的結果。我之前做過這些,但我正努力回想起來,或者在SO上找到任何幫助我的帖子。
更新: 我應該提到這之前:有沒有辦法做到這一點,而不指定哪一列? DataFrame基於上下文而改變。
我也更新了數據框,並顯示了一個id
字段,因爲我剛剛意識到這是可能的。我認爲現在在id
領域的一個groupby應該解決這個問題。
[熊貓GROUPBY串聯多列串]的可能的複製(https://stackoverflow.com/questions/ 32117848/pandas-groupby-concatenate-strings-in-multiple-columns) – Zero
和https://stackoverflow.com/q/23794082 – Zero
你能否通過addi更新問題將另一列添加到數據框及其結果?既然你不想指定列 – Dark