[英]How to change rows name to column name in dataframe using python?
我有兩個 dataframe:
df1:
colname value
gender M
status business
age 60
df2:
colname value
name Susan
Place Africa
gender F
有沒有辦法以預期的 output 的方式連接這兩個 dataframe? 我試過 outer join 但它不起作用,提前謝謝你。
注意:沒有數據框總是具有相同的公共屬性,而且我正在嘗試刪除 colname 和 value 列。
預計 output:
gender status age name Place
0 M business 60 0 0
1 F 0 0 Susan Africa
您可以使用 colname 作為索引和concat
轉換為系列:
dfs = [df1, df2]
out = pd.concat([d.set_index('colname')['value'] for d in dfs],
axis=1, ignore_index=True).T
output:
colname gender status age name Place
0 M business 60 NaN NaN
1 F NaN NaN Susan Africa
嘗試這個:
pd.concat([df1, df2], axis=0).fillna(0).reset_index(drop=True)
gender status age name place
0 M business 60 0 0
1 F 0 0 Susan Africa
fillna
將用 0 替換NaN
值。
下面一行將解決你的問題,你可以使用 pandas 轉置 function 來解決這個問題。
df_new = pd.concat([df1,df2])
df_new.set_index("colname").T
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.