Po zakończeniu tego samouczka dowiesz się:
W tym artykule nauczy Cię, jak sformatować kolumnę łańcuchową jako datę, sformatować kilka kolumn ciągów jako daty, a na koniec sformatuj wszystkie kolumny ciągłego daty jako kolumny DateTime.
Jak konwertować lub zmienić kolumny DataFrame na DateTime w pandy?
W tym samouczku użyjemy funkcji To_DateTime (). Najpierw zbadajmy metodę panda to_dateTime (), która przyjmuje serię lub kolumnę pandas i przekształca ją w datetime. Funkcja oferuje szeroki zakres elastycznych parametrów, które pozwalają zmienić wyniki.
Składnia: pandy.To_DateTime (arg, errors = „Raise”, DayFirst = false, rokFirst = false, utc = none, box = true, format = brak, exact = true, jednostka = brak, elastyczne_dateTime_format = false, orign = 'unix', cache = cache = Cache = Cache = Cache = Cache = Cache = Cache = Cache = Cache FAŁSZ)
Parametry
arg: Float, ciąg, lista lub słownikowy obiekt, który ma zostać przekonwertowany na obiekt DateTime.
Day -Sirst: Wartość bool. Domyślnie to prawda.
Początkowo: Wartość logiczna. Jeśli to prawda, rok zostanie umieszczony na pierwszym miejscu.
UTC: Wartość logiczna, jeśli jest ustawiona na true, zwraca czas w UTC.
format: Pozycja dnia, miesiąca i roku jest wskazywana przez wkład łańcuchowy.
Typ powrotu: Seria DATETIME.
Przykład nr 1: Konwertuj kolumnę ciągów na datetime
Najpierw utworzymy ramkę danych za pomocą słownika, aby zademonstrować ten przykład. Tutaj stworzymy słownik. Najpierw importujemy pandy, a następnie przekazujemy słownik jako argument wewnątrz PD.Klasa Frame Data.
Stworzyliśmy naszą strumień danych. DataFrame składa się z czterech kolumn „ID”, „Nazwa”, „Wynagrodzenie” i dołączanie. Kolumna ID przechowuje wartości ciągów (1001, 1002, 1003, 1004, 1005, 1006), podczas gdy kolumny „nazwa” i „pensja” zawierają wartości („Kiara”, „Sam”, „Cara”, „Brian” ”,„ Henry ”,„ Bill ”) i (12000, 10000, 9000, 9900, 11500, 11000). W kolumnie „Joining_Date” zapisaliśmy wartości daty jako dane ciągów („1/5/2019”, „3/10/2019”, „3/10/2019”, „5/2/2021”, „4 /4/2021 ”,„ 10/4/2021 ”).
Teraz, aby zmienić kolumnę „łączenie_date” na DATETIME, zastosujemy metodę To_DateTime ().
Przeszliśmy kolumnę łączenia_date do funkcji To_DateTime (). Teraz sprawdźmy, czy kolumna jest konwertowana na DATETIME, czy nie za pomocą funkcji info (.
W sekcji/kolumnie Dtype możesz zobaczyć, że kolumna łącząca_date jest konwertowane na datetime.
Przykład nr 2: Konwertuj kolumnę numeryczną na datetime
Widzieliśmy w przykładzie nr 1 Jak konwertować kolumnę z wartościami daty jako ciąg na danych danych. Teraz utworzymy ramkę danych z co najmniej jedną kolumną o wartościach daty jako ciągu, a następnie przekonwertujemy ją na DATETIME za pomocą funkcji To_DateTime ().
Utworzyliśmy naszą ramkę danych z czterema kolumnami „ID”, „Nazwa”, „Age” i „Task_Date”. Wartości danych (1011, 1022, 1033, 1044, 1055, 1066), („Tom”, „Mandy”, „Sara”, „Bran”, „Lucy”, „Blake”) i (24, 21, 23 , 25, 21, 23) są przechowywane odpowiednio w kolumnach „id”, „nazwa” i „wiek”. W kolumnie „Task_Date” zapisaliśmy dane daty jako wartości liczbowe (20220410, 20220412, 20220415, 20220501, 20220515, 20220610). Ponownie użyjemy atrybutu DTypes, aby określić dane danych w każdej kolumnie w naszej ramce danych.
Obecnie danych typu kolumny „Task_Date” to INT64. Aby przekonwertować go na datetime, użyjemy metody To_DateTime ().
Konwertowaliśmy kolumnę liczb całkowitych na DATETIME za pomocą funkcji To_DateTime (). Metodę info () można użyć do weryfikacji wyniku.
Zamiast przechowywać datetime w tej samej kolumnie, możemy przechowywać wartości datetime w nowej kolumnie.
Data danych nowej kolumny datetime można określić za pomocą atrybutu Dtypes.
Przykład nr 3: Konwertuj kolumnę łańcuchową na DateTime w formacie YyyyMmdd
Możemy zmienić format daty wartości łańcucha daty po konwersji wartości na datetime za pomocą funkcji to_DateTime () i określeniu parametru formatu jako prawidłowego formatu. Najpierw utworzymy ramkę danych składających się z co najmniej jednej kolumny z wartościami daty jako ciągów.
W powyższym ramie danych utworzyliśmy dwie kolumny „sprzedaż” i „sales_date” z wartościami danych (3, 2, 4, 10, 5, 6) i („220110”, „210215”, „210330”, „210401” , „210510”, „210620”). Obecnie typem danych kolumny „Sales_Date” będzie „obiektem”.
Widać, że kolumna „daty sprzedaży” w DataFrame ma „obiekt danych”, wskazujący, że jest to ciąg. Teraz użyjemy parametru formatu metody TO_DATETIME () do konwersji danych na DATETIME („YYYY-MM-DD”).
Można zauważyć, że nasza kolumna Sales_Date jest konwertowana na datetime i sformatowana w formacie%y%m%d.
Przykład nr 4: Konwertuj wiele kolumn na Datetime
Możesz użyć metod Apply () i TO_DATETIME () do konwersji kilku kolumn w pandy na datetime. Funkcja Apply () zostanie zastosowana do listy z etykietami kolumn, a funkcja To_DateTime () zostanie przekazana jako wejście wewnątrz funkcji Apply (). Najpierw potrzebujemy ramki danych z wieloma kolumnami zawierającymi dane daty.
Utworzyliśmy wymaganą ramkę danych z kolumnami „zadaniem”, „Assign_Date” i „Due_Date”. W kolumnie „zadanie” mamy wartości danych (2, 4, 5, 2, 4, 3), w kolumnie „Assess_Date” zapisaliśmy wartości ciągów („13/02/2022”, „3/03 /2019 ”,„ 5/04/2019 ”,„ 7/05/2021 ”,„ 10/06/2021 ”,„ 12/07/2021 ”), aw kolumnie„ Due_Date ”wartości danych to (” 18/02/2022 ”,„ 10/03/2022 ”,„ 8/04/2022 ”,„ 12/05/2022 ”,„ 15/06/2022 ”,„ 21/07/2022). Teraz przekonwertujmy kolumny daty na datetime.
Wybraliśmy kolumny „Assess_Date” i „Due_Date”, a następnie zastosowaliśmy funkcję Apply (), aby zastosować funkcję To_DateTime () w obu kolumnach. Sprawdźmy Dytes kolumn, aby sprawdzić, czy kolumny są konwertowane na datetime.
Obie kolumny są pomyślnie przekonwertowane na datetime, jak widać powyżej w kolumnie Dtype.
Przykład nr 5: Konwertuj dni liczb całkowitych UNIX na Datetime
Konwersja danych liczb całkowitych na dni UNIX to kolejna potężna konwersja oferowana przez pandy. Kolumna całkowita może zostać wprowadzona do funkcji To_DateTime (). Aby to zrobić, musimy określić „D” jako wartość parametru UNIX, co sprawia, że wartość liczb całkowita reprezentuje dzień z danego pochodzenia. Utwórzmy ramkę danych o kolumnie całkowitej reprezentującej dane daty.
Utworzyliśmy ramkę danych o tylko jednej kolumnie, „data”, przechowując wartości danych jako liczby całkowite (12642, 23345, 25322, 14536, 13455). Teraz przekonwertujmy naszą kolumnę na datetime.
Określając funkcję UNIX = „D” wewnątrz funkcji To_DateTime (. Nie określaliśmy parametru pochodzenia, ponieważ jest on domyślny ustawiony na „UNIX”.
Inne metody, takie jak Astypes (), można również użyć do konwersji kolumny DataFrame na datetime. Ale użycie metody To_DateTime () to lepszy i bardziej autentyczny sposób wykonania tej konwersji.
Wniosek
W tym samouczku omówiliśmy, w jaki sposób kolumnę lub serię pandy można przekonwertować na obiekt danych. W tym samouczku użyliśmy funkcji To_DateTime, aby przeprowadzić konwersję z pandy na datetime. Widzieliśmy składnię funkcji wraz z jej parametrami, aby zrozumieć jej działalność i funkcjonalność. W przykładach tego postu staraliśmy się nauczyć, jak konwertować kolumnę ciągów, kolumnę numeryczną i wiele kolumn na datetime. Omówiliśmy również metody i parametry zmiany formatów daty.