panda Dataframe 中的一列包含如下字符串:BANKNIFTY2330935500PE,FINNIFTY2330618050PE,NIFTY23DEC21000CE,TCS23MAR3000PE字符串的第一部分(所有字母大写)是安全名称,如BANKNIFTY,FINNIFTY,NIFTY,TCS字符串的第二部分保存日期,如:23309,23306,23DEC,23MAR接下来是值:35500,18050,21000,21000,3000最后一个是类型:CE、PE
我试着这样说:
security = df.symbol.str[0:9]
type = df.symbol.str[-2:]
value = df.symbol.str[-7:-2]```
Can anyone suggest a better method of slicing or splitting the string into four parts?
1条答案
按热度按时间jgovgodb1#
此处可以将
str.extract
与多个捕获组一起使用:这里使用的正则表达式模式表示匹配和捕获:
([A-Z]+)
捕获全大写安全名称(\d{5}|\d{2}[A-Z]{3})
捕获5位数日期或DDMON(\d+)
捕获一个或多个数字的值([A-Z]+)
捕获全大写类型这是一个有效的正则表达式demo。