【发布时间】:2022-01-08 00:07:08
【问题描述】:
我想获得一个包含列表中所有元素的子数据框。 我们以DataFrame为例。
my_dict = {
'Job': ['Painting', 'Capentry', 'Teacher', 'Farming'],
'Job_Detail': ['all sort of painting',
'kitchen utensils, all types of roofing etc.',\
'skill and practical oriented teaching',\
'all agricultural practices']
}
df = pd.DataFrame(my_dict)
输出如下:
Job Job_Detail
0 Painting all sort of painting
1 Capentry kitchen utensils, all types of roofing etc.
2 Teacher skill and practical oriented teaching
3 Farming all agricultural practices
my_lst = ['of', 'all']
我想用mylst 过滤df 以获得如下所示的sub_DataFrame:
Job Job_Detail
0 Painting all sort of painting
1 Capentry kitchen utensils, all types of roofing etc.
我试过df[df.Job_Detail.isin(['of', 'all']),但它返回一个空的DataFrame。
【问题讨论】:
-
您的函数不应该也返回
3 Farming all agricultural practices,因为它也包含“全部”吗? -
是的,不应该。
my_lst中的所有元素都应该在Job_Detail的行中。 -
好吧,看来
and比or更棘手一些。不过,我想我有一个解决方案。 -
我编辑了我的解决方案以包含只选择同时具有“of”和“all”的行的代码