作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想提取 URL 的特定部分,驻留在 Pandas Dataframe 的列中,并将其设为新列。这个
ref = df['REFERRERURL']
ref.str.findall("\\d\\d\\/(.*?)(;|\\?)",flags=re.IGNORECASE)
返回一个包含元组的系列。 创建 Series 之前,如何只取出该元组的一部分,以便我可以简单地将其变成一列? referrerurl 的样本数据是
http://wap.blah.com/xxx/id/11/someproduct_step2;jsessionid=....
在此示例中,我有兴趣创建一个仅包含“someproduct_step2”的列。
谢谢,
最佳答案
In [25]: df = DataFrame([['http://wap.blah.com/xxx/id/11/someproduct_step2;jsessionid=....']],columns=['A'])
In [26]: df['A'].str.findall("\\d\\d\\/(.*?)(;|\\?)",flags=re.IGNORECASE).apply(lambda x: Series(x[0][0],index=['first']))
Out[26]:
first
0 someproduct_step2
在 0.11.1 中,这也是一种巧妙的方法
In [34]: df.replace({ 'A' : "http:.+\d\d\/(.*?)(;|\\?).*$"}, { 'A' : r'\1'} ,regex=True)
Out[34]:
A
0 someproduct_step2
关于pandas - 提取值(value)并从中创建新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16818871/
我是一名优秀的程序员,十分优秀!