我有这样的数据。
print(df)
[ ID ... Control
0 PDF-1 ... NaN
1 PDF-3 ... NaN
2 PDF-4 ... NaN我只想得到ID列的编号。结果会是。
1
3
4如何获得dataframe列的字符串之一?
发布于 2019-12-04 16:21:51
换个普通的PDF-前缀怎么样?
df['ID'].str.replace('PDF-', '')发布于 2019-12-04 16:22:28
你能试一下吗。
df['ID'].replace(regex=True,to_replace=r'([^\d])',value=r'')您可以参考df.replace的文档
基本上,使用regex从名为ID的列中删除除数字之外的所有内容,其中\d表示数字,而当我们使用[^\d]时,表示分隔形式的数字匹配所有内容。
发布于 2019-12-04 16:23:43
使用Regex的另一种可能性是:
df.ID.str.extract('(\d+)')这避免了仅仅为了提取整数而更改原始数据。
因此,对于以下简单示例:
import pandas as pd
df = pd.DataFrame({'ID':['PDF-1','PDF-2','PDF-3','PDF-4','PDF-5']})
print(df.ID.str.extract('(\d+)'))
print(df)我们得到以下信息:
0
0 1
1 2
2 3
3 4
4 5
ID
0 PDF-1
1 PDF-2
2 PDF-3
3 PDF-4
4 PDF-5https://stackoverflow.com/questions/59180336
复制相似问题