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

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

df.loc - ValueError:緩沖區的維數錯誤(預期為 1,得到 0)

df.loc - ValueError:緩沖區的維數錯誤(預期為 1,得到 0)

江戶川亂折騰 2022-06-22 15:24:13
我目前有以下代碼 - 我正在嘗試根據列在一個數據框中獲取匹配的行Last Name。def rule(row):    name = row['Last Name']    return rules.loc[rules['Last Name'] == name]['Type']df['Type'] = df.apply(rule, axis=1)當我運行它時,我得到一個錯誤,因為方法== name中的rule- 我該如何修復它?ValueError: ('Buffer has wrong number of dimensions (expected 1, got 0)', 'occurred at index 0')這rules看起來像:  Last Name      Type0     Smith         A1     Doe           B和df:             Name First Name Last Name0      John Smith      John      Smith1        Jane Doe      Jane      Doe2        John Doe      John      Doe我希望決賽看起來像:             Name First Name Last Name  Type0      John Smith      John      Smith     A1        Jane Doe      Jane      Doe       B2        John Doe      John      Doe       B編輯:添加示例rules和df
查看完整描述

1 回答

?
翻過高山走不出你

TA貢獻1875條經驗 獲得超3個贊

df1 = pd.DataFrame({'First Name': ['John', 'Jane','John'], 'Last Name': ['Smith','Doe','Doe']})

print(df1)


rules = pd.DataFrame({'Last Name':['Smith', 'Doe'], 'Type': ['A','B']})

print(rules)

輸出是:


    First Name Last Name

0       John     Smith 

1       Jane       Doe

2       John       Doe

   Last Name Type

0     Smith    A

1       Doe    B

df1.merge(規則)


輸出是:


    First Name  Last Name   Type

0       John    Smith   A

1       Jane    Doe     B

2       John    Doe     B

這是你渴望的答案嗎?


查看完整回答
反對 回復 2022-06-22
  • 1 回答
  • 0 關注
  • 155 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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