Python Pandas Dataframe конвертирует столбец юлианского дня в столбец даты ⇐ Python
Python Pandas Dataframe конвертирует столбец юлианского дня в столбец даты
У меня есть столбец, полный юлианских дней. Я хочу преобразовать их в формат даты.
df1.shape() (638765, 94) df1['ДЕНЬ'] = 0 2022216 # Формат = год (2022), день года (216) 1 2022216 2 2022216 3 2022216 4 2022216 из даты и времени импорта даты и времени Решение 1:
%timeit df1['Date'] = df1['DAY'].apply(lambda x: datetime.strptime('%d'%x,'%Y%j').strftime('% Г-%м-%д')) 11,9 с ± 50,8 мс на цикл (среднее ± стандартное отклонение для 7 циклов, по 1 циклу в каждом) 0 04.08.2022 1 04.08.2022 2 04.08.2022 3 04.08.2022 4 04.08.2022 Решение 2:
%timeit df1['Date'] = pd.to_datetime(df1['DAY'], format='%Y%j') 20,3 мс ± 243 мкс на цикл (среднее значение ± стандартное отклонение для 7 циклов по 10 циклов в каждом) 0 04.08.2022 1 04.08.2022 2 04.08.2022 3 04.08.2022 4 04.08.2022 Мне очень понравилось приведенное выше решение-2, так как оно занимает меньше секунды, а другое — около 11 секунд. Мой вопрос: это поведение по умолчанию для to_datetime для преобразования данного юлианского дня в формат даты ('%Y-%m-%d'), хотя я его не указывал?
У меня есть столбец, полный юлианских дней. Я хочу преобразовать их в формат даты.
df1.shape() (638765, 94) df1['ДЕНЬ'] = 0 2022216 # Формат = год (2022), день года (216) 1 2022216 2 2022216 3 2022216 4 2022216 из даты и времени импорта даты и времени Решение 1:
%timeit df1['Date'] = df1['DAY'].apply(lambda x: datetime.strptime('%d'%x,'%Y%j').strftime('% Г-%м-%д')) 11,9 с ± 50,8 мс на цикл (среднее ± стандартное отклонение для 7 циклов, по 1 циклу в каждом) 0 04.08.2022 1 04.08.2022 2 04.08.2022 3 04.08.2022 4 04.08.2022 Решение 2:
%timeit df1['Date'] = pd.to_datetime(df1['DAY'], format='%Y%j') 20,3 мс ± 243 мкс на цикл (среднее значение ± стандартное отклонение для 7 циклов по 10 циклов в каждом) 0 04.08.2022 1 04.08.2022 2 04.08.2022 3 04.08.2022 4 04.08.2022 Мне очень понравилось приведенное выше решение-2, так как оно занимает меньше секунды, а другое — около 11 секунд. Мой вопрос: это поведение по умолчанию для to_datetime для преобразования данного юлианского дня в формат даты ('%Y-%m-%d'), хотя я его не указывал?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение