我有一个类似于下面的列表列的大型数据框,但有更多的行和列:
import pandas as pd
data = {'First': [['First', 'value'],['second','value'],['third','value','is'],['fourth','value','is']],
'Second': [['adj','noun'],['adj','noun'],['adj','noun','verb'],['adj','noun','verb']]}
df = pd.DataFrame (data, columns = ['First','Second'])
如果第一列中的值等于第二列中的条件,我想从第一列返回该值。所以我喜欢的是第三列,如果第二列中的值等于'adj'
所需的第三列:
third column:
first
second
third
fourth
由于我的数据集很大,我至少尝试过过滤数据集中包含值“adj”的行,但不知道如何继续:
df[['First','Second']][df['Second'].map(set(['adj']).issubset)]
如果每个列表中始终有
adj
,则按.index
获取索引,并从第二个列表中选择按其值:如果不存在更一般的工作
adj
:用
apply
替代:相关问题 更多 >
编程相关推荐