我正在使用str.contains搜索其中列包含特定字符串作为子字符串的行
df[df['col_name'].str.contains('find_this')]
这将返回'find_this'在字符串中某处的所有行。但是,在df ['col_name']中的字符串以'find_this'开头的罕见但重要的情况下,上述查询不会返回此行。
str.contains()在应该返回true的地方返回false。
任何帮助将不胜感激,谢谢!
编辑我已根据要求添加了一些示例数据。Image of dataframe我想更新“ Eqvnt_id”列,例如,“ Course_ID”列包含AAS 102的行都具有相同的“ Eqvnt_id”值。
为此,我需要能够在'Course_ID'中的字符串中搜索'AAS 102',以便找到适当的行。
数据类型是所有对象。我尝试过将它们映射并将其应用于字符串类型,但是没有效果。
您可以改用pandas.Series.str.find()-它返回找到字符串的索引-如果在开头,则返回的索引为0。如果找不到字符串,则返回-1 。
df[df['col_name'].str.find('find_this') != -1]
让我知道是否有帮助!