【问题标题】:python pandas - string matchingpython pandas - 字符串匹配
【发布时间】:2016-06-09 01:59:07
【问题描述】:

我正在尝试将字符串值与数据框 column1 值匹配,基于匹配我将第 2 列值提供给我在计算中进一步使用的变量:

#Val is a string
NewVal = df.loc[df['col1']== Val]['col2'].values

即使匹配存在,上面也返回一个空值。我知道可能存在数据类型不匹配,因为变量val 是一个字符串,df['col1'] 是一个对象数据类型,无论如何要转换列到一个字符串? (我试过df..astype(str)df.astype(basestring)

如何才能成功匹配这些字符串?

【问题讨论】:

    标签: python string python-2.7 pandas type-conversion


    【解决方案1】:

    你应该通过 Pandas 字符串函数...

    http://pandas.pydata.org/pandas-docs/stable/text.html

    使用contains 方法(它甚至采用正则表达式)。像这样的:

    toUse = df['col1'].str.contains(Val)
    valsIwant = df['col2'][toUse]
    

    您还会在该站点中找到很多好的字符串方法。

    【讨论】:

      猜你喜欢
      • 2017-07-15
      • 2020-10-01
      • 2017-10-30
      • 2017-12-12
      • 2011-03-22
      • 1970-01-01
      • 2021-02-23
      • 2019-06-14
      相关资源
      最近更新 更多