首页
学习
活动
专区
工具
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中创建了新列,并根据第二列是否包含各种字符串列表中的字符串来设置其值。

相关搜索:python pandas -根据包含字符串列表的B列更改A列中的值pandas的列表理解:如果pandas中的列包含字符串,则返回带有字符串的新列使用Pandas查询函数并测试字符串是否在包含列表的列中字符串列表中的模式匹配,在pandas中创建新列在列中搜索字符串并创建新的项目列表如何使用pandas/python创建多个新列,并根据其他两个列中的值填充列?如何在pandas中根据另一列的值组合字符串列表行?如何在pandas数据透视表中创建仅包含已填充列的匹配值的新列?通过循环遍历字典列表并基于pandas中的特定日期条件来创建新列Python pandas:基于组内的最大值创建新列,但使用附加(字符串)列中的值我想用列表中字符串匹配的值创建一个新列Pandas dataframe-创建新的列表列,由分组列中的字符串聚合而成如果list包含另一个子列表的任何字符串,则在pandas中创建新列根据行中的值是否重新出现在dataframe中,在pandas dataframe中创建新列仅将pandas行的所有字符串值作为列表添加到新列中Python如何提取pandas dataframe中[]括号内的指定字符串并使用布尔值创建新列如何根据另一列中的值是否包含在另一数据帧的特定列中来设置另一数据帧的列值在过滤后的数据框中搜索特定字符串,然后根据结果创建新列(Python/Pandas)如何使用pandas计算字符串中列值的字符数,并根据结果对行进行分组?使用Pandas,我是否可以创建一个新列,根据一个值是否存在于多个列中来返回一个二进制变量?
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的合辑

领券