[英]Remove leading zeros or foreign characters in sequence number
例如:在下面的“示例”列中,我需要删除第 2、3 和 5 列,因为它们要么在开头有前导零,要么在开头有特殊字符。
指数 | 样本 |
---|---|
1 | 12345 |
2 | 00152 |
3 | 09 |
4 | 325 |
5 | .1246 |
我尝试将“示例”列数据类型更改为字符串并像这样提取第一个字符:
t = df['Sample'].astype(str).str[0].astype(int)
但它给了我这个 output:
print(t)
| 1 | 1 |
| 2 | 1 |
| 3 | 9 |
| 4 | 3 |
| 5 | 0 |
它想要这样,以便我可以使用索引值删除相应的行:
| 1 | 1 |
| 2 | 0 |
| 3 | 0 |
| 4 | 3 |
| 5 | . |
我的方法正确吗? 有人可以帮我解决这个问题吗? 非常感谢。
您可以尝试使用str.match
如下:
df = df[df["sample"].str.match(r'[1-9]')]
这只会保留样本值以数字开头的行,而不是零。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.