簡體   English   中英

如何根據另一列中的值是否包含列表的值來創建新列?

[英]How to create a new column based on whether the value in another column contains values of a list?

我想根據另一列中的值是否包含列表的值來創建一個新列。

例如:下面是原dataframe

一個 b
蘋果2876 紅色的
3梨6 紅色的
12香蕉28 紅色的
1ab33pie2 紅色的
2rbb水 紅色的

我有一個清單[apple, banana, water]

我想根據列 a 是否包含此列表中的某些文本來創建一個新列。 新的 dataframe 看起來像這樣:

一個 b c
蘋果2876 紅色的 1
3梨6 紅色的 0
12香蕉28 紅色的 1
1ab33pie2 紅色的 0
2rbb水 紅色的 1

我們試試看

lst = ['apple', 'banana', 'water']
df['c'] = df['a'].str.contains('|'.join(lst)).astype(int)
print(df)

            a    b  c
0   apple2876  red  1
1      3pear6  red  0
2  12banana28  red  1
3   1ab33pie2  red  0
4   2rbbwater  red  1

暫無
暫無

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

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