我在pandas DF中有一个列如下:
Column
30482304823
3204820
2304830
Apple - 390483204
Orange - 3939491
grape - 34038414
apple
我想删除' - '左边的所有内容,所以基本上我希望上面看起来像:
Column
30482304823
3204820
2304830
390483204
3939491
34038414
apple
我尝试了以下pandas片段:
out['Column'] = out['Column'].str.split('-', 1, expand=True)[1]
out['Column'] = out['Column'].str.replace('Orange -', '', )
out['Column'].str.map(lambda x: x.lstrip('Orange -'))
out['Column'].str.lstrip('Orange -')
答案 0 :(得分:3)
最简单的我能想到的是
df.Column.str.split('\s*-\s*').str[-1]
0 30482304823
1 3204820
2 2304830
3 390483204
4 3939491
5 34038414
6 apple
Name: Column, dtype: object
答案 1 :(得分:1)
out['Column'] = out['Column'].apply(lambda x : str(x).split('-')[-1])