Как извлечь год из столбца с разными строками даты - PullRequest
0 голосов
/ 08 октября 2019

У меня есть столбец данных с различными типами строк , которые выглядят так:

    year
0   1990
1   1998.0
2   2006-02-12

Я хочу извлечь только год из всех них и преобразовать их в любой int или float.

    year
0   1990
1   1998
2   2006

1 Ответ

1 голос
/ 08 октября 2019

Предполагая, что это единственные шаблоны, вы можете использовать str.extract :

import pandas as pd

df = pd.DataFrame(data=['1990','1998.0','2006-02-12'], columns=['year'])

result = df.year.str.extract('^(\d{4})')
print(result)

Выход

      0
0  1990
1  1998
2  2006

Шаблон^(\d{4}) переводится в первые 4 цифры в начальной строке, поэтому вы в основном извлекаете первые 4 цифры каждой строки в столбце.

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