Python | Pandas.to_datetime()

Kad tiek importēts CSV fails un izveidots datu rāmis, datuma un laika objekti failā tiek nolasīti kā virknes objekts, nevis datuma un laika objekts, tāpēc ir ļoti grūti veikt tādas darbības kā laika starpība virknē, nevis datuma laiks. objektu. Pandas to_datetime() metode palīdz pārvērst virkni Date time par Python Datuma un laika objekts.

Pandas.to_datetime() Sintakse

Sintakse: pandas.to_datetime(arg, errors='raise', dayfirst=False, yearfirst=False, utc=Neviens, box=True, format=Nav, specific=True, unit=Nav, infer_datetime_format=False, origin='unix', kešatmiņa = False)

Parametri:

  1. arg: Vesels skaitlis, virkne, peldošs, saraksta vai diktēšanas objekts, kas konvertējams par Datuma un laika objektu.
  2. pirmā diena: Būla vērtība, dienu novieto pirmajā vietā, ja True.
  3. pirmais gads: Būla vērtība, novieto gadu pirmajā vietā, ja ir True.
  4. utc: Būla vērtība, atgriež laiku UTC, ja patiess.
  5. formāts: Virknes ievade, lai norādītu dienas, mēneša un gada pozīciju.

Atgriešanas veids: Datums Laiks

Pandas.to_datetime() Pandas piemērā

Pandas to_datetime() izmanto, lai pārveidotu dažādus datu tipus datetime objektos. Mēs redzēsim dažādus piemērus, kā to izmantot:

Pārvērtiet Pandas virkni uz Datetime

Lai konvertētu datuma un laika datus, kas saglabāti kā teksti, datuma un laika objektos, izmantojiet Pandas.to_datetime(). Formāts sastāv no datuma un laika.

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)>

Izvade:

2023-09-17 14:30:00 

Konvertējiet Pandas skaitliskās vērtības uz Datetime

Datuma un laika objektus var izveidot no skaitļiem, kas apzīmē laiku, piemēram, sekundes kopš Unix laikmeta. Mēs varam norādīt ievades datu vienību, izmantojot vienības argumentu.

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)>

Izvade:

2024-07-23 02:08:20 

Pārvērtiet Pandas kolonnu par datumu un laiku

Tas paskaidros, kā strādāt ar datuma un laika datiem, izmantojot Pandas bibliotēka. Galvenais mērķis ir pārveidot datuma un laika informāciju no CSV faila formātā, kas padara analīzi vieglāk saprotamu un noderīgāku.

Saitei uz izmantoto CSV failu, noklikšķiniet šeit .

1. piemērs: Datuma formāta konvertēšana izmantojot Pandas

Virkne līdz datumam Nākamajā piemērā tiek nolasīts csv fails un datu rāmja datuma kolonna no virknes objekta tiek pārveidota par Datuma un laika objektu.

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())>

Izvade:

 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 

Kā parādīts attēlā, kolonna Datuma datu tips bija objekts, taču pēc to_datetime() izmantošanas tā tika pārveidota par datuma un laika objektu.

2. piemērs: Laika formāta konvertēšana, izmantojot Pandas

Izņēmums konvertējot Laika objektu var arī konvertēt ar šo metodi. Bet tā kā slejā Laiks datums nav norādīts, un līdz ar to Pandas to ievietos Šodienas datums automātiski tādā gadījumā.

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())>

Izvade:

 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 

Kā parādīts izvadē, datums (2018-07-07), kas ir šodienas datums, jau ir pievienots objektam Datums laiks.