python中的数据转换

时间:2017-12-05 07:46:57

标签: python data-conversion

我已在线抓取数据。这些数据保存在mongodb中。这一天总是在月和年之前。我只需要月份和年份。我想删除月前的数字,数据框架不一样,如:

2008年5月20日至21日, 2008年3月19日, 2010年9月16日至17日, 2011年9月5日,

这些数据在python中保存为字符串,是否有任何函数可以删除python中的天数?这些是大约3000个数据,所以我认为我需要一个循环来解决问题。 enter image description here

2 个答案:

答案 0 :(得分:0)

你可以使用

pd.Series(['20-21 May 2008', '19 March 2008', '16-17 September 2010', '5 September 2011']).str.extract('(\w{3,}\s\d{4})', expand=False)

这将提取所需的字符串并创建一个新的Series对象。

答案 1 :(得分:-1)

由于您要删除的信息都是数字,空格和可能的连字符,因此您可以使用此功能轻松地为每个日期执行此操作:

month_year = days_month_year.lstrip('0123456789- \t')

这应该是相当可靠的,因为你想保持字符串从月份开始,这总是按字母顺序排列。

当然,有很多不同的方法可以做到这一点。你也可以做正则表达式来提取你想要的东西,但上面是最简单的。

>>> s = '20-21 May 2008'
>>> s.lstrip('0123456789- \t')
'May 2008'