我有一个多行多列填充类型和值的数据框架。都是字符串。我想编写一个函数,该函数满足以下条件: 1) 哪种类型的搜索(第1列) 2) 第一个值(第2列) 3) 第二个连续值(在第2列的下一行中)
我设法编写了一个函数来搜索一种类型的一个值,如下所示,但如何添加第二种类型?我想可能是借助于df.shift(axis=0)
,但我不知道如何将该命令与条件搜索相结合
import pandas as pd
d = {'type': ['wordclass', 'wordclass', 'wordclass', 'wordclass', 'wordclass', 'wordclass',
'english', 'english', 'english', 'english', 'english', 'english'],
'values': ['dem', 'noun', 'cop', 'det', 'dem', 'noun', 'this', 'tree', 'is', 'a', 'good', 'tree']}
df = pd.DataFrame(data=d)
print(df)
tiername = 'wordclass'
v1 = 'dem'
v2 = 'noun'
def search_single_tier(tiername, v1):
searchoutput = df[df['type'].str.contains(tiername) & df['values'].str.match(v1)]
return searchoutput
x = search_single_tier(tiername, v1)
print(x)```
您不需要为此创建函数。相反,请尝试以下方法:
在Op的评论之后:
相关问题 更多 >
编程相关推荐