Python | Pandas.to_datetime()
Коли імпортується файл CSV і створюється кадр даних, об’єкти «Дата-час» у файлі зчитуються як рядковий об’єкт, а не як об’єкт «Дата-час». Тому дуже важко виконувати такі операції, як «різниця в часі» над рядком, а не як «Дата-час». об'єкт. Метод Pandas to_datetime() допомагає перетворити рядок Date у час Python Дата і час об'єкт.
Синтаксис Pandas.to_datetime().
Синтаксис: pandas.to_datetime(arg, errors='raise', dayfirst=False, yearfirst=False, utc=None, box=True, format=None, exact=True, unit=None, infer_datetime_format=False, origin='unix', cache=False)
Параметри:
- аргумент: Ціле число, рядок, число з плаваючою точкою, список або об’єкт dict для перетворення на об’єкт «Дата і час».
- день перший: Логічне значення, день ставиться першим, якщо True.
- рік перший: Логічне значення, рік ставиться першим, якщо True.
- utc: Логічне значення, повертає час у UTC, якщо True.
- формат: Введення рядка для визначення положення дня, місяця та року.
Тип повернення: Дата, час
Pandas.to_datetime() у прикладі Pandas
панди to_datetime() використовується для перетворення різних типів даних в об’єкти datetime. Ми побачимо різні приклади того, як це використовувати:
Перетворіть рядок Pandas на Datetime
Щоб перетворити дані дати й часу, збережені як текст, у об’єкти datetime, використовуйте Pandas.to_datetime(). Формат складається з дати та часу.
Python3
import> pandas as pd> # date string> d_string> => '2023-09-17 14:30:00'> # Convert the string to datetime> dt_obj> => pd.to_datetime(d_string)> print> (dt_obj)> |
Вихід:
2023-09-17 14:30:00
Перетворення числових значень Pandas на дату й час
Об’єкти datetime можуть бути створені з числових чисел, які представляють час, наприклад секунди з епохи Unix. Ми можемо вказати одиницю вхідних даних за допомогою аргументу unit.
Python3
import> pandas as pd> # Sample numerical value representing seconds since the Unix epoch> unix_timestamp> => 1721700500> # Convert to datetime using 's' (seconds) as the unit> dt_obj> => pd.to_datetime(unix_timestamp, unit> => 's'> )> print> (dt_obj)> |
Вихід:
2024-07-23 02:08:20
Перетворіть стовпець Pandas на DateTime
Тут пояснюється, як працювати з даними дати й часу за допомогою Бібліотека панд. Основна мета — перетворити інформацію про дату й час із файлу CSV у формат, який робить аналіз легшим для розуміння та більш корисним.
Для посилання на файл CSV, який використовується, натисніть тут .
приклад 1: Перетворення формату дати за допомогою Pandas
Рядок до дати У наступному прикладі файл CSV зчитується, а стовпець дати кадру даних перетворюється на об’єкт «Дата-час» із об’єкта рядка.
Python3
# Importing the pandas package> import> pandas as pd> # Making a data frame from a CSV file> data> => pd.read_csv(> '/content/todatetime.csv'> )> # Overwriting data after changing the 'Date' format> data[> 'Date'> ]> => pd.to_datetime(data[> 'Date'> ])> # Corrected: Added quotes around 'Date'> # Info of the data> data.info()> # Display the data> print> (data.head())> |
Вихід:
RangeIndex: 1000 entries, 0 to 999 Data columns (total 2 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Date 1000 non-null datetime64[ns] 1 Time 1000 non-null object dtypes: datetime64[ns](1), object(1) memory usage: 15.8+ KB Date Time 0 1993-08-06 12:42 PM 1 1996-03-31 6:53 AM 2 1993-04-23 11:17 AM 3 2005-03-04 1:00 PM 4 1998-01-24 4:47 PM
Як показано на зображенні, тип даних стовпця Date був об’єктом, але після використання to_datetime() він був перетворений на об’єкт дати та часу.
приклад 2: Перетворення формату часу за допомогою Pandas
Виняток під час перетворення Об’єкт Time також можна перетворити за допомогою цього методу. Але оскільки в стовпці «Час» дата не вказана, отже Pandas поставить Сьогоднішня дата автоматично в цьому випадку.
Python3
# importing pandas package> import> pandas as pd> # making data frame from csv file> data> => pd.read_csv(> '/content/todatetime.csv'> )> # overwriting data after changing format> data[> 'Time'> ]> => pd.to_datetime(data[> 'Time'> ])> # info of data> data.info()> # display> print> (data.head())> |
Вихід:
RangeIndex: 1000 entries, 0 to 999 Data columns (total 2 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Date 1000 non-null object 1 Time 1000 non-null datetime64[ns] dtypes: datetime64[ns](1), object(1) memory usage: 15.8+ KB Date Time 0 8/6/1993 2023-10-12 12:42:00 1 3/31/1996 2023-10-12 06:53:00 2 4/23/1993 2023-10-12 11:17:00 3 3/4/2005 2023-10-12 13:00:00 4 1/24/1998 2023-10-12 16:47:00
Як показано у вихідних даних, дату (2018-07-07), яка є сьогоднішньою, уже додано з об’єктом Date time.