Как преобразовать строки (например, возраст) в одно значение в столбцах? - PullRequest
0 голосов
/ 10 марта 2020

Я новичок в PANDAS, и я не могу найти способ преобразовать что-то вроде этого:

 0 AGE
 1 82 years 03 months 11 days
 2 54 years 06 months 10 days
 3 23 years 03 months 09 days
 4 60 years 02 months 13 days

в это:

0 AGE
1 82
2 54
3 23
4 60

Заранее спасибо

Ответы [ 3 ]

1 голос
/ 10 марта 2020

Просто примените Timedeltas

df['AGE']=df.AGE.astype('timedelta64[Y]')
1 голос
/ 10 марта 2020

Еще один подход. Здесь мы извлекаем цифры в начале строки с помощью регулярных выражений.

df["AGE"] = df["AGE"].str.extract('(^\d+)')

Выходные данные

    0   AGE
0   1   82
1   2   54
2   3   23
3   4   60
1 голос
/ 10 марта 2020

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

df["AGE"] = df["AGE"].apply(lambda x : int(x.strip().split()[0]))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...