【问题标题】:Loop for iterating through two lists循环遍历两个列表
【发布时间】:2020-04-10 00:58:51
【问题描述】:

我正在尝试使用循环来遍历两个列表。这个问题与此相关,但我正在测试另一个用于类似目的的数据集:Loop for iterating through two lists is not working

我想根据 if 语句在我的原始数据集中再添加两列(Test_1Test_2):

  • 如果列表'To_test'中的一个对象是/包含列表low_test_1中的一个词,那么它是Yes,否则它是No
  • 如果列表'To_test'中的一个对象是/包含列表low_test_2中的一个词,那么它是Yes,否则它是No

请问怎么做?

谢谢

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    这是因为 test_1 中的值不完全在 df['Test_1'] 中。

    例如,索引为 201257 的记录具有“ansa.it”而不是“ansa”。 因此,为了您的目的,请尝试此代码。

    import pandas as pd
    import numpy as np  
    
    def part_is_in(x, values):
        output = 'No'
        for val in values:
            if val in x:
                return 'Yes'
                break                
        return output
    
    df['Test_1'] = df['To_test'].apply(part_is_in, values = low_test_1)
    df['Test_2'] = df['To_test'].apply(part_is_in, values = low_test_2)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-25
      • 1970-01-01
      • 2023-03-06
      • 2020-07-19
      • 1970-01-01
      • 1970-01-01
      • 2013-06-22
      相关资源
      最近更新 更多