通过将现有DF列与列表进行比较来生成DF列

时间:2019-12-23 23:37:37

标签: list dataframe compare

我是Python的新手,需要数据框方面的帮助。我有一个包含2列的数据框,我需要在此数据框中创建第3列。第三列根据列表检查第二列中的值。如果列表中存在第二列中的值,那么我希望第三列输出某些内容(如果列表中不存在,则添加一个虚拟值)。

数据框:

Out[25]: 
                                                       path          volume
0  name_Brand                                                   Sedan Acura
1  name_Category                               /Sedan Acura  Luxury Compact
3  name_Brand-Category          /Sedan Acura/Luxury Compact              A5
4  name_Volume               /Sedan Acura/Luxury Compact/A5           2.4 L
2  name_Brand-Category          /Sedan Acura/Luxury Compact            RS 5
                                                    ...             ...    
[99 rows x 2 columns]

我要检查的第二列(卷)列表

Out[26]: 
[0     2.2 L
 1     2.0 L
 2     2.7 L
 3     2.4 L
 4     2.4 L
 Name: Volume, dtype: object]

我尝试了以下代码,但是我只能从else命令中得到1种结果。

for i in X_volume['volume']:
    if i == volume_list:
        X_volume['col3'] = 'Attribute'
    else:
        X_volume['col3'] = 'Asset'
X_volume

else命令中只有一种类型的输出。

                         col3  
0  name_Brand           Asset  
1  name_Category        Asset  
3  name_Brand-Category  Asset  
4  name_Volume          Asset  
2  name_Brand-Category  Asset  
                      ...    

[99 rows x 3 columns]

我在做什么错了?

0 个答案:

没有答案