Python 通过列表字典筛选数据帧
我有一个包含电影信息的数据框,我正在尝试过滤这些行,以便如果字典列表包含“name”==“specified genre”,它将显示包含该类型的电影 我试过使用列表理解Python 通过列表字典筛选数据帧,python,pandas,dataframe,indexing,Python,Pandas,Dataframe,Indexing,我有一个包含电影信息的数据框,我正在尝试过滤这些行,以便如果字典列表包含“name”==“specified genre”,它将显示包含该类型的电影 我试过使用列表理解 filter = ['Action'] expectedResult = [d for d in df if d['name'] in filter] 但是,我最终出现了一个错误: TypeError:字符串索引必须是整数您的循环,df中d的将为您的值提供标题。 您的d将具有泛型作为值。 尝试运行:- for d in df:
filter = ['Action']
expectedResult = [d for d in df if d['name'] in filter]
但是,我最终出现了一个错误:
TypeError:字符串索引必须是整数您的循环,df中d的
将为您的值提供标题。
您的d将具有泛型作为值。
尝试运行:-
for d in df:
print(d)
您将了解d是代码中的一个列名。这就是为什么会出现这个错误
请参见以下示例:
将熊猫作为pd导入
df=pd.DataFrame({“abc”:[1,2,3],“def”:[4,5,6]})
对于df中的d:
印刷品(d)
给出:
abc
def
我认为你要做的事情可以通过以下方式实现:
df=pd.DataFrame({“流派”:[“某物”,“其他事物],“abc”:[“电影1”,“电影2”]})
电影=录音(“记录”)
[m[“abc”]表示电影中的m,如果m[“流派”]=“某物”]
其中:
['movie1']
能否提供一些示例输入数据和预期输出(无图像)?请看,谢谢!欢迎来到StackOverFlow!这更适合作为评论而不是回答。请参阅:@ AlgMyTrx考虑将此标记为评论/低质量的答案,而不是编辑它来帮助更新的用户。谢谢!to_dict()非常有效,谢谢