[英]Adding row to pandas dataframe where column contains additional value that should be another row?
簡化的 df,其中一些行包含another flavor
附加條目,應該是另一行:
values more values flavor another flavor
0 6 foo caramel chocolate
1 4 baz vanilla NaN
df = pd.DataFrame({"values": [6, 4],"more values": ["foo", "baz"],"flavor": ["caramel", "vanilla"],"another flavor": ["chocolate", np.nan],})
我們需要添加含有其他列值的另一行,填充flavor
與價值觀another flavor
。 然后我們會放棄another flavor
來獲得desired_df
:
values more values flavor
0 6 foo caramel
1 6 foo chocolate
2 4 baz vanilla
desired_df = pd.DataFrame({"values": [6, 6, 4],"more values": ["foo", "foo", "baz"],"flavor": ["caramel", "chocolate", "vanilla"],})
有什么實用的方法可以做到這一點? 有沒有我可以作為關鍵字搜索的表達式?
請使用 loc 訪問器對合適的列進行切片,然后追加。 如果需要,您可以對值進行排序。
df.loc[:,:'flavor'].append(df.loc[:, df.columns != 'flavor'].rename(columns={'another flavor':'flavor'}),ignore_index=True).dropna().sort_index().
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.