使用字符串搜索熊猫在数据框中省略其他匹配项

时间:2018-12-01 19:40:00

标签: python pandas dataframe filter

我正在尝试遍历股票名称和价格的列表。 “ AAPL_high”有效,因为没有其他股票拥有相同的名字。

但是,下面的代码在“ F_high”上找到“ F_high”,并列出了包含字符串ex的其他股票。 “ CF_high”和“ COF_high”。我只需要'F_high',不需要其他包含其他字符的字符串。

stocks_of_interest = ['AAPL_high', 'F_high']
    df = pd.read_csv('test.csv')
    for i in stocks_of_interest:
            print(i)
            indiv = df[df['level_0'].str.contains(i)]
            print(indiv)

我应该将另一个参数传递给str.contains()进一步完善它,还是使用其他过滤方法?预先谢谢你。

1 个答案:

答案 0 :(得分:1)

匹配数据框中的字符串。你可以的。

stocks_of_interest = ['AAPL_high', 'F_high']
    # from listed stocks print out just their correlations
    df = pd.read_csv('test.csv')
    for i in stocks_of_interest:
            print(i)
            indiv = df.iloc[np.where(df['level_0'].values==i)]
            print(indiv)