首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在pandas中创建新列,并根据第二列是否包含各种字符串列表中的字符串来设置其值

在pandas中创建新列,并根据第二列是否包含各种字符串列表中的字符串来设置其值,可以使用apply函数结合lambda表达式来实现。

首先,我们需要导入pandas库:

代码语言:txt
复制
import pandas as pd

然后,我们可以创建一个DataFrame对象,其中包含两列数据,假设第一列为"column1",第二列为"column2":

代码语言:txt
复制
data = {'column1': ['apple', 'banana', 'orange', 'grape'],
        'column2': ['I like apple', 'I hate banana', 'I love orange', 'I dislike grape']}
df = pd.DataFrame(data)

接下来,我们可以定义一个字符串列表,例如:

代码语言:txt
复制
string_list = ['like', 'love']

然后,我们可以使用apply函数和lambda表达式来创建新列,并根据第二列是否包含字符串列表中的字符串来设置其值:

代码语言:txt
复制
df['new_column'] = df['column2'].apply(lambda x: any(word in x for word in string_list))

在上述代码中,lambda表达式会遍历字符串列表中的每个字符串,检查该字符串是否在第二列的每个元素中出现,如果出现则返回True,否则返回False。apply函数会将lambda表达式应用到第二列的每个元素上,并将结果赋值给新列"new_column"。

最后,我们可以打印DataFrame对象来查看结果:

代码语言:txt
复制
print(df)

输出结果如下:

代码语言:txt
复制
  column1          column2  new_column
0   apple    I like apple         True
1  banana   I hate banana        False
2  orange  I love orange         True
3   grape  I dislike grape       False

这样,我们就成功地在pandas中创建了新列,并根据第二列是否包含各种字符串列表中的字符串来设置其值。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券