[英]Python + Regex + CSV + Pandas : failed to produce numeric values from alpha-numeric values
[英]Extract number from alpha-numeric column pandas
輸入 df
Code Value
USH0001108421891 -9999
USH0001108421892 -9999 X3
USH0001108421893 -77EX3
USH0001108421894 483EQ3
USH0001108421895 325EX3
USH0001108421896 297ES3
從示例中可以看出, Value
列既有字符串又有整數。 但我只想要字母表之前的第一組整數。
預期 df
Code Value
USH0001108421891 -9999
USH0001108421892 -9999
USH0001108421893 -77
USH0001108421894 483
USH0001108421895 325
USH0001108421896 297
我試過這個,但它返回了一個錯誤。
df1['Value'] = df1['Value'].astype(int)
ValueError: invalid literal for int() with base 10: '-77EX3'
您可以將.str.extract
與包含捕獲組的regex pattern
一起使用:
df['Value'] = df['Value'].str.extract(r'^(-?\d+)', expand=False).astype(int)
Code Value
0 USH0001108421891 -9999
1 USH0001108421892 -9999
2 USH0001108421893 -77
3 USH0001108421894 483
4 USH0001108421895 325
5 USH0001108421896 297
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.