繁体   English   中英

根据字符串列表从pandas数据框中提取值

[英]Extracting values from pandas dataframe based on list of strings

我试图根据每个标题是否包含列表中的任何公司名称(“ co_names_list”)来过滤熊猫数据框,该数据框包含带有新闻标题的列(列名“ title”)

我已经尝试了以下

尝试1

sp500news = pd.DataFrame()
for i in raw_news_2.index:
    for j in co_names_list:
        if j in raw_news_2.loc[i,'title']:
            sp500news = sp500news.append(raw_news_2.iloc[i])
            print(sp500news)

尝试2

sp500news = raw_news_2.loc[raw_news_2['title'].isin(co_names_list)]

样本数据框

我认为这应该做您想要的:

df[df.title.str.contains('|'.join(co_names_list))]

您正在执行的操作是检查title每个句子,如果该句子中包含co_names_list中的任何单词。 这是通过将句子中的所有单词与'|'连接起来来完成'|' ,用作OR运算符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM