问题描述
df1.iloc[:,0]
0 data143_2220020_1
1 data143_2220020_2
2 data105_2220058_1
3 data105_2220058_2
4 data134_2221056_2
我只想要中间值,例如2220020
。我尝试了以下代码:
df1.iloc[:,0] = df1.iloc[:,0].str.extract('data.*_(.*)_.*')
但是,它仅返回NAN
。我也尝试了其他几件事,但都没有用。有人可以帮忙吗?提前非常感谢!
解决方法
如果数据始终采用这种格式,则可以在下划线处将其分割并获取中间值:
df1.iloc[:,0] = df1.iloc[:,0].str.split('_').str[1]