Возьмите только месяцы в серии дат в Python - PullRequest
0 голосов
/ 19 ноября 2018

У меня есть ряд дат панд, которые выглядят так:

0        8/1/2018
1        7/1/2018
2       11/1/2018
3        9/1/2018
4        9/1/2018
5        8/1/2018
6        9/1/2018
7        9/1/2018
8        8/1/2018
9        8/1/2018
10       9/1/2018
11       8/1/2018
12       8/1/2018

и так далее. Обратите внимание, тип данных это <class 'pandas.core.series.Series'>. Теперь я хочу просто получить вектор или список месяцев в виде целых чисел. * Т.е. 1005 *

8 7 11 9 9 etc...

Я новичок в python, обычно в C ++ я бы просто сделал std::stoi(it.first.substr(0, it.first.find("/")), предполагая, что it.first - это даты, хранящиеся в виде строки.

Ответы [ 3 ]

0 голосов
/ 19 ноября 2018

Использование findall in pandas

df[1].str.findall('\d+').str[0]
Out[193]: 
0      7
1     11
2      9
3      9
4      8
5      9
6      9
7      8
8      8
9      9
10     8
11     8
Name: 1, dtype: object

#df[1].str.findall('\d+').str[0].tolist()
0 голосов
/ 19 ноября 2018

Как насчет этого?

df[1].split('/')[0]
0 голосов
/ 19 ноября 2018

при условии, что ваша серия названа s.pd.to_datetime(s).dt.month.tolist()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...