我正在尝试将字符串值与dataframe column1值匹配,基于匹配我将第2列值提供给我在计算中进一步使用的变量:
#Val is a string
NewVal = df.loc[df['col1']== Val]['col2'].values
即使匹配存在,上面返回一个空值..我知道可能有一个数据类型不匹配,因为变量val
是一个字符串而df['col1']
是一个对象数据类型,无论如何将列转换为字符串? (我尝试了df..astype(str)
和df.astype(basestring)
。
如何成功匹配这些字符串?
答案 0 :(得分:1)
你应该通过Pandas字符串函数......
http://pandas.pydata.org/pandas-docs/stable/text.html
使用a_fighter.opponents + a_fighter.inverse_opponents
方法(甚至可以进行常规表达)。像这样:
contains
您还可以在该网站中找到许多优秀的字符串方法。