[英]Using if statement to find specific string values in a list
我在 dataframe 中有一列由列表组成。 我正在尝试使用 if 语句来识别这些列表中包含任何特殊字符或数字的值。 我试图识别的数字是字符串值,而不是数字。 我曾尝试使用正则表达式来识别这些值,但我不知道如何在 if 语句中使用它。
下面的代码给了我我想要的,但我知道必须有一种更简洁的方法来做到这一点:
if '-' in row['col_name'].iloc[0] or '/' in row['col_name'].iloc[0] or '0' in row['col_name'].iloc[0] or '1' in row['col_name'].iloc[0]:
return action
在这个例子中我只包含了一些特殊字符和数字。 我想找到任何特殊字符或数值。 先感谢您!
关于这篇文章,以下可能是您需要的:
special_chars = ['-', '/', '0', '1']
# returns df with only the rows in which the column contains any of these characters
result_df = df.loc[df['col_name'].str.contains('|'.join(special_chars))]
'|' 将 function 作为正则表达式字符。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.