如何创建DataFrame,以便在数据集的“Language”列中仅显示法语电影,其中该列中有多种语言?
示例:
Languages column:
French
English
German,French,Spanish
Spanish,English,French
French, English, Gernman
我一直在尝试的只带回了语言列中只有法语作为值的列。请帮助!
我试过:
df.loc[df['column_name'] == some_value]
但它只返回仅使用法语的电影,而不返回同时使用法语和其他语言的电影。
3条答案
按热度按时间m3eecexj1#
将
str.contains
与单词边界(\b
)一起使用以避免匹配子字符串(例如,“Abc”与“Abcde”匹配):如果您确定没有可能的子字串相符项目(语言可能有):
rryofs0p2#
Loc函数返回指定索引处的数据。您应该获得如下所示的所需行:
lc8prwob3#
如果Language列包含用逗号分隔的语言,那么你可以用
str.split(',')
将该字符串拆分成','
,返回list
,然后检查列表中是否包含法语。你可以用Pandas apply()
检查,它可以将一个函数应用于列的每个元素。Pandas apply()有更多的功能,通常非常有用。工作示例:
或者,由于check函数非常简单,您可以编写如下代码:
其返回
当然,您可以编写该函数来执行任何您喜欢的操作,例如返回French而不是返回
True
或False
,或者执行其他检查,例如忽略大写/小写等。