2
에서 그들을 계산 후
나는 문자열에서 날짜와 시간을 추출 wrintig에 의해, 팬더 DatFrame로 변환 :파이썬 : 정렬 날짜 팬더
df = pd.to_datetime(news_date, format='%m/%d/%Y')
출력과 같은 것입니다 :
['1997-10-31 18:00:00', '1997-10-31 18:00:00',
'1997-10-31 18:00:00', '1997-10-31 18:00:00',
'1997-10-31 18:00:00', '1997-10-31 18:00:00',
'1997-10-31 18:00:00', '1997-10-31 18:00:00',
'1997-10-31 18:00:00', '1997-10-31 18:00:00',
...
'2016-12-07 03:14:00', '2016-12-09 16:31:00',
'2016-12-10 19:02:00', '2016-12-11 09:41:00',
'2016-12-12 05:01:00', '2016-12-12 05:39:00',
'2016-12-12 06:44:00', '2016-12-12 08:11:00',
'2016-12-12 09:36:00', '2016-12-12 10:19:00']
그럼 난 단지 연도와 월을 유지하고 날짜를 정렬하고 싶어, 내가 쓴 :
month_year = df.to_series().apply(lambda x: dt.datetime.strftime(x, '%m-%Y')).tolist() # remove time and day
new = sorted(month_year, key=lambda x: datetime.datetime.strptime(x, '%m-%Y')) # sort date
지금까지, 내가 알이 날짜의 ist. 문제는 내가 그들의 빈도를 세우려고 할 때 발생한다. 나는 나중에 시간 분포를 그려야한다.
print(pd.DataFrame(new).groupby(month_year).count())
출력은 다음과 같습니다 : 내 코드는 내가 1 열에서 정렬 된 날짜를 갖고 싶어, 그럼에도 불구하고
01-1998 60
01-1999 18
01-2000 49
01-2001 50
01-2002 87
01-2003 129
01-2004 125
01-2005 225
01-2006 154
01-2007 302
01-2008 161
01-2009 161
01-2010 167
01-2011 181
01-2012 227
... ...
12-2014 82
12-2015 89
12-2016 13
, 다른 열에 주파수 (예를 들어, 팬더 DataFrame) sortin에 대한 to_period
다음 value_counts
를 변환하여 당신이 month period
필요가 있다고 생각
01-1998 60
02-1998 32
03-1998 22
... ...
11-2016 20
12-2016 13