[英]Python merging data frames and renaming column values
在 python 中,我有一個看起來像這樣的 df
Name ID
Anna 1
Sarah 2
Max 3
還有一個看起來像這樣的df
Name ID
Dan 1
Hallie 2
Cam 3
如何合並 df 以使 ID 列看起來像這樣
Name ID
Anna 1
Sarah 2
Max 3
Dan 4
Hallie 5
Cam 6
這只是一個最小的可重現示例。 我的實際數據集有 1000 個值。 我基本上是在合並數據幀,並希望 ID 以數字順序(前一個數據幀的延續)而不是每次從一個重復。
連接兩個 DataFrame, reset_index
並使用新索引分配“ID”
df_new = pd.concat((df1, df2)).reset_index(drop=True)
df_new['ID'] = df_new.index + 1
Output:
Name ID
0 Anna 1
1 Sarah 2
2 Max 3
3 Dan 4
4 Hallie 5
5 Cam 6
您可以使用ignore_index=True
連接數據幀,然后設置 ID 列:
df = pd.concat([df1, df2], ignore_index=True)
df['ID'] = df.index + 1
使用pd.concat
:
out = pd.concat([df1, df2.assign(ID=df2['ID'] + df1['ID'].max())], ignore_index=True)
print(out)
# Output
Name ID
0 Anna 1
1 Sarah 2
2 Max 3
3 Dan 4
4 Hallie 5
5 Cam 6
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.