楼主: 我是小趴菜
503 0

[数据挖掘新闻] python中使用Regex提取日期在 [推广有奖]

  • 0关注
  • 4粉丝

教授

35%

还不是VIP/贵宾

-

威望
0
论坛币
29650 个
通用积分
380.5350
学术水平
1 点
热心指数
1 点
信用等级
0 点
经验
7150 点
帖子
670
精华
0
在线时间
37 小时
注册时间
2022-8-30
最后登录
2023-4-4

楼主
我是小趴菜 发表于 2022-10-12 14:08:49 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

我想从我的数据框列中提取年份data3['CopyRight']。


CopyRight

2015 Sony Music Entertainment

2015 Ultra Records , LLC under exclusive license

2014 , 2015 Epic Records , a division of Sony Music Entertainment

Compilation ( P ) 2014 Epic Records , a division of Sony Music Entertainment

2014 , 2015 Epic Records , a division of Sony Music Entertainment

2014 , 2015 Epic Records , a division of Sony Music Entertainment

我使用以下代码来提取年份:


data3['CopyRight_year'] = data3['CopyRight'].str.extract('([0-9]+)', expand=False).str.strip()

我的代码我只获得了第一次出现的年份。


CopyRight_year

2015

2015

2014

2014

2014

2014

我想提取专栏中提到的所有年份。


预期产出


CopyRight_year

2015

2015

2014,2015

2014

2014,2015

2014,2015

解决办法:

findall与regex一起使用,查找长度4为list的所有整数,并按join分隔符结束:




data3['CopyRight_year'] = data3['CopyRight'].str.findall(r'\b\d{4}\b').str.join(',')

print (data3)

CopyRight CopyRight_year

0 2015 Sony Music Entertainment 2015

1 2015 Ultra Records , LLC under exclusive license 2015

2 2014 , 2015 Epic Records , a division of Sony ... 2014,2015

3 Compilation ( P ) 2014 Epic Records , a divisi... 2014

4 2014 , 2015 Epic Records , a division of Sony ... 2014,2015

5 2014 , 2015 Epic Records , a division of Sony ... 2014,2015


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:python REG Compilation Copyright Exclusive

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-4 08:42