亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Pandas 匹配數據幀結構

Pandas 匹配數據幀結構

至尊寶的傳說 2022-01-05 11:33:07
我有兩個數據框,如下所示:d = {'var1': [1, 2, 3, 4], 'var2': [5, 6, 7, 8], 'var3': [9, 10, 11, 12]}df = pd.DataFrame(data=d)df    var1   var2  var30     1     5      91     2     6      102     3     7      113     4     8      12和d2 = {'var1': [4, 1, 3], 'var2': [5, 7, 7]}df2 = pd.DataFrame(data=d2)df2    var1   var20     1     51     2     72     3     7我希望 df2 具有與原始 df 相同的列和列順序所以結果看起來像:df2    var1   var2  var30     1     5     NaN1     2     7     NaN2     3     7     NaN我知道我可以在此示例中手動分配一個名為“var3”的新列并將其值設置為 NaN,但我正在尋找一種通用解決方案,需要在具有許多列的許多數據幀上完成此操作。
查看完整描述

3 回答

?
三國紛爭

TA貢獻1804條經驗 獲得超7個贊

使用 align


df2,_=df2.align(df,axis=1)

df2

Out[190]: 

   var1  var2  var3

0     4     5   NaN

1     1     7   NaN

2     3     7   NaN


查看完整回答
反對 回復 2022-01-05
?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

嘗試使用reindex:


df2.reindex(df.columns, axis=1)

輸出:


   var1  var2  var3

0     4     5   NaN

1     1     7   NaN

2     3     7   NaN


查看完整回答
反對 回復 2022-01-05
?
大話西游666

TA貢獻1817條經驗 獲得超14個贊

 for n in (set(df.columns) - set(df2.columns)):
    df2[str(n)] = np.NaN


查看完整回答
反對 回復 2022-01-05
  • 3 回答
  • 0 關注
  • 162 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號