как разделить столбец?
есть поле с датами "tr_day" в след формате: "0 10:23:26". нужно создать новое поле "day" вычленив из поля "tr_day" первый символ до пробела, например, "0".
использую str.split:
tr['tr_day1']=tr['tr_datetime'].str.split(' ',n=2,expand=True)
но выдается ошибка
ValueError: Wrong number of items passed 2, placement implies 1
что я делаю не так?
Ответы (2 шт):
Автор решения: MaxU
→ Ссылка
Воспользуйтесь методом Series.str.extract().
Исходный фрейм
In [12]: df
Out[12]:
tr_datetime
0 0 10:23:26
1 1 11:11:11
2 20 20:20:20
Решение
df["tr_day1"] = df["tr_datetime"].str.extract(r"(\d+).*").astype("int16")
Результат:
In [14]: df
Out[14]:
tr_datetime tr_day1
0 0 10:23:26 0
1 1 11:11:11 1
2 20 20:20:20 20
In [15]: df.dtypes
Out[15]:
tr_datetime object
tr_day1 int16
dtype: object