df1であらわされるデータフレームをdf2のようにしたい
初めての質問で至らない点あるかと思いますがよろしくお願いいたします。
同じID2があるときcom1だけが異なり、他は変わらない。
com1の文字を'_'でつなげて表2のようなデータフレームを作りたいです
df1
ID1 | ID2 | com1 | com2 |
---|---|---|---|
a | a-0 | あい | ab |
a | a-1 | うえ | cd |
a | a-1 | えお | cd |
b | b-0 | かき | ef |
b | b-0 | くけ | ef |
b | b-0 | こさ | ef |
b | b-1 | しす | gh |
df2
ID1 | ID2 | com1 | com2 |
---|---|---|---|
a | a-0 | あい | ab |
a | a-1 | うえ_えお | cd |
b | b-0 | かき_くけ_こさ | ef |
b | b-1 | しす | gh |
python
1df1=pd.DataFrame({'ID1':['a','a','a','b','b','b','b'], 2 'ID2':['a-0','a-1','a-1','b-0','b-0','b-0','b-1'], 3 'com1':['あい','うえ','えお','かき','くけ','こさ','しす'], 4 'com2':['ab','cd','cd','ef','ef','ef','gh'],})
試したこと
pandasのgroupbyでグループ化した文字列を結合する
パッとコードが浮かばず、上記など参考にgroupbyを使って試してみましたが、
ID1やcom2が変わらないようなデータフレームを作れませんでした。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/29 14:01