[英]Python pandas extract, how to extract remaining part of string
我已經看了幾個小時,這應該很簡單。 我試圖從帶有混合或數字和字母的字符串中提取所有字母。 這是一個例子:
df = pd.Series(['ENGLANDSR11SW'])
df = df.to_frame('column')
df['ValueAfterExtract'] = df['column'].str.extract("(?P<letter>[a-zA-Z]+)")
print(df)
從數據幀中的字符串值ENGLANDSR11SW
中,結果是ENGLANDSR
但是我想帶上字符串的最后一個字母,即SW
,這將導致ENGLANDSRSW
,這意味着只刪除了數字11
。
我怎樣才能做到這一點?
用空字符串替換所有數字( \\d
):
In [6]: df['column'].str.replace(r'\d', '')
Out[10]:
0 ENGLANDSRSW
Name: column, dtype: object
或者,要刪除不在[a-zA-Z]
使用regexp [^a-zA-Z]
。 例如,這將刪除空格和標點符號以及數字:
In [20]: df['column'].str.replace(r'[^a-zA-Z]', '')
Out[20]:
0 ENGLANDSRSW
Name: column, dtype: object
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.