如何检查序列号是否以0开头

时间:2019-07-18 21:04:12

标签: python python-3.x pandas

我从df中排除了满足某些条件的行

df[~((df['Wood_type'] == 'pine') & (df['wood_size'] == 20))] 

我还要排除“序列”列中以0开头的数字

df[~((df['Wood_type'] == 'pine') & (df['wood_size'] == 20) & (df['Serial'] == range(0) == 0))]

我尝试了上面的方法,没有结果。

1 个答案:

答案 0 :(得分:0)

您可能想使用 df.str.startswith检查第一个字符:

df[ ~((df['Wood_type'] == 'pine') & (df['wood_size'] == 20) & (df['Serial'].str.startswith('0')))]

当前表达式df['Serial'] == range(0) == 0是没有意义的。它等效于df['Serial'] == range(0) and range(0) == 0。显然,这些都不与将字符串的第一个字符与'0'(而不是0)进行比较有关。