Pandas提取右侧值,使用子字符串的结束位置查找起点

2024-10-04 11:35:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我在excel中完成了以下操作。不能在熊猫身上复制。具有以下数据集:

 0      PRJ - 01999777
 1      PRJ-0198953
 2      PRJ- 01879966
 3      PRJ - 21879966
 4      PRJ - 91879966
 ... 
646        0501164732

我想将右边的数字提取到一个新列中,以获得以下内容:

01999777
0198953
01879966
21879966
91879966
... 
0501164732

我使用以下方法获得“-”的位置:

dfSP['temp'] = map(lambda x: x.find('- '), dfSP[appnocol])

appnocol是保存原始数据的列名的变量名。'temp'是我要将计数写入的新列。然后,我将该值提取到where中的一个新列“appnonew”中,因为这只适用于某些行

dfSP['appnonew'] = np.where((dfSP[pacol] == lpa[1]), df['appnocol'].apply(lambda x: x[dfSP[appnocol]:100]), '')

我犯了一个错误

“字符串索引必须是整数”

这是因为第一行在“temp”中不返回整数,而是:“”

有什么建议可以解决这个问题,或者有其他的解决方法吗?谢谢


Tags: 数据方法lambdamap原始数据数字整数find