在Panda Dataframe中,有一列数据我要提取受'-'限制的字符串的倒数第二个词,并将其放入另一列/系列中
样本数据:
Serial_Code=pd.series([
xxxx-myData1-xxx,
xxxx-xxx-xx-myData2-x,
MyData3-xxxxxxxx,
x-MyData4-xxx,
])
如您所见,我要提取的数据始终位于右第二个以破折号分隔的位置
我使用pandas.str.split分隔字符串块
temp_series=df["Serial_Code"].str.split("-")
现在我有一系列由不同长度的列表组成
temp_series=pd.Series([
[xxxx,myData1,xxx],
[xxxx,xxx,xx,myData1,x],
[myData3,xxxxxxx],
[x,myData4,xxx]
])
如何在不使用循环逐行浏览每一行的情况下获得这样的列表/系列?
final_series=([
myData1,
myData2,
myData3,
myData4
])
答案 0 :(得分:2)
使用str
访问器
s.str.split('-').str[-2]
或
s.str.split('-').str.get(-2)
两种产量
0 myData1
1 myData2
2 MyData3
3 MyData4
dtype: object