簡體   English   中英

檢查數據框列中的值是否在列表中-Python

[英]Check if value from a dataframe column is in a list - Python

我有一個包含客戶數據的數據框,客戶名稱位於名為“客戶”的列中。 我也有一個“成員”列表。 一些客戶也在成員列表中,但有些不在。 如果客戶是會員,我希望它為TRUE,否則為FALSE。

這是我所擁有的:

df[customer].isin([members])

但是錯誤告訴我“無法散列的類型:'列表'”。

我也嘗試過:

df[customer] in [members]

該錯誤告訴我“數組的長度不同:118816與1171”

任何幫助,將不勝感激!

在調用df['customer'].isin()members周圍有一組額外的方括號。 另外,您在列名customer周圍沒有引號。 您的代碼應如下所示:

df['customer'].isin(members)

我不熟悉數據框,但是在我看來df [customer]和[members]是列表列表。

如果是這種情況,則可以使用numpy(或者,如果選擇一個客戶而不是整個客戶列表,則數據框可能會起作用)。

import numpy as np

customers = [[mark], [tom], [jane], [bill]]
members = [[tom], [jane]]
array_of_members = np.array(members)

for customer in customers:
    if customer in array_of_members:
        #do something

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM