如何打印列表中value==字符串的行

2024-05-15 03:51:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这样一个数据帧:

                 words
1                 [me]
2               [they]
4         [it, we, it]
5                   []
6         [we, we, it]

我想打印df.words==某个单词的行,比如“我”、“它”或“没有单词”。通常,我会这样做:

df[df.words == 'me]df[df.words == '',但当我这样做时,会得到一个空数据帧。这是怎么回事?我应该如何治疗我正在寻找的疾病


Tags: 数据dfit单词we疾病mewords
1条回答
网友
1楼 · 发布于 2024-05-15 03:51:12

您可以使用pandas.DataFrame.apply方法来实现结果

import pandas as pd
df = pd.Series(data=[["me"], ["they"], ["it", "we", "it"], [], ["we", "we", "it"]], name="words").to_frame()
filt = df["words"].apply(lambda x: "me" in x)
print(df.loc[filt])

对于空字符串的情况

empty_filt = df["words"].apply(lambda x: len(x)==0)
print(df.loc[empty_filt])

相关问题 更多 >

    热门问题