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

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

使用 lamda 函數檢查 URL 中是否存在列中的值

使用 lamda 函數檢查 URL 中是否存在列中的值

慕絲7291255 2021-10-19 10:31:16
我有一個有 2 列的數據框。一個是 URL,另一個是用戶名。+----------------------------------------+---------------+|                  URL                   |   Username    |+----------------------------------------+---------------+| johnsmith/stackoverflow.com/?=abc      | johnsmith     || michealrod/stackoverflow.com/?=payment | michealrod    || stephaniejean/stackoverflow.com/?=abc  | stephaniejean |+----------------------------------------+---------------+我想編寫一個 lambda 函數來檢查 URL 中是否存在用戶名。我正在嘗試寫這樣的東西,但出現錯誤df['exists'] = df.apply(lambda x : df['Username'] in df['URL']).any()所以基本上我試圖在用戶名是 URL 的一部分時獲得 TRUE,如果用戶名在 URL 中不存在則獲得 False。
查看完整描述

2 回答

?
德瑪西亞99

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

假設您的數據是干凈的,列表理解是相對有效的:

df['exists'] = [x in y for x, y in zip(df['Username'], df['URL'])]

您可以使用apply但性能較差:

df['exists'] = df.apply(lambda row: row['Username'] in row['URL'], axis=1)


查看完整回答
反對 回復 2021-10-19
?
嚕嚕噠

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

檢查 numpy core.defchararray.find

df['exists']=np.core.defchararray.find(df.URL.values.astype(str),df.Username.values)!=-1



查看完整回答
反對 回復 2021-10-19
  • 2 回答
  • 0 關注
  • 241 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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