Jak zmienić nazwy kolumn i indeksy wierszy w pandach?
Jedną z najczęstszych operacji, które można wykonać podczas czyszczenia danych lub wykonywania eksploracyjnej analizy danych podczas nauki o danych, jest manipulowanie / naprawianie nazw kolumn lub nazw wierszy.
W tym poście zobaczymy
- Jak zmienić nazwy kolumn pandy dataframe?
- Jak zmienić nazwy wierszy lub indeksy wierszy w ramce danych pand?
Najpierw załadujmy pandy.
# import pandas>import pandas as pd
Wykorzystajmy dane gapminder ze strony internetowej stolarki oprogramowania.
# link to gapminder datadata_url = "http://bit.ly/2cLzoxH"# read data from url as pandas dataframe>gapminder = pd.read_csv(data_url)
sprawdźmy nazwy kolumn ramki danych, pierwsze trzy wiersze danych, używając funkcji head.
>print(gapminder.head(3)) country year pop continent lifeExp gdpPercap0 Afghanistan 1952 8425333 Asia 28.801 779.4453141 Afghanistan 1957 9240934 Asia 30.332 820.8530302 Afghanistan 1962 10267083 Asia 31.997 853.100710
Możemy również użyć funkcji kolumn, aby uzyskać nazwy kolumn.
>gapminder.columnsIndex(, dtype="object")
Jak zmienić nazwy kolumn w Pandach?
Jedna może zmienić nazwy kolumn pand dataframe na co najmniej dwa sposoby. Jednym ze sposobów zmiany nazw kolumn w Pandas jest użycie df.columns z Pandas i bezpośrednie przypisanie nowych nazw.
Na przykład, jeśli masz nazwy kolumn na liście, możesz przypisać listę do nazw kolumn bezpośrednio.
Aby zmienić kolumny gapminder dataframe, możemy przypisać listę nowych nazw kolumn do gapminder.columns jako
>gapminder.columns =
Spowoduje to przypisanie nazw z listy jako nazw kolumn dla ramki danych „gapminder”. Możemy sprawdzić ramkę danych, aby zobaczyć, czy ma ona nowe nazwy kolumn za pomocą funkcji head ().
>gapminder.head(3) country year population continent life_exp gdp_per_cap0 Afghanistan 1952 8425333 Asia 28.801 779.4453141 Afghanistan 1957 9240934 Asia 30.332 820.8530302 Afghanistan 1962 10267083 Asia 31.997 853.100710
Problem z tym podejściem do zmiany nazw kolumn polega na tym, że trzeba zmienić nazwy wszystkich kolumn w ramce danych. To podejście nie zadziała, jeśli chcemy zmienić tylko nazwę jednej
Funkcja zmiany nazwy pandy na Zmień nazwy kolumn
Innym sposobem zmiany nazw kolumn w pandach jest użycie funkcji zmiany nazwy.Użycie funkcji zmiany nazwy do zmiany nazw kolumn jest znacznie lepszym sposobem niż wcześniej. Można chanować łatwo nazwy poszczególnych kolumn. I nie wszystkie nazwy kolumn muszą zostać zmienione.
Aby zmienić nazwy kolumn za pomocą funkcji zmiany nazwy w Pandas, należy określić mappera, słownik ze starą nazwą jako kluczami i nową nazwą jako wartościami. Oto przykład zmiany wielu nazw kolumn za pomocą słownika. Użyjemy również inplace = True, aby zmienić nazwy kolumn w miejscu.
Jedną z największych zalet korzystania z funkcji rename jest to, że możemy użyć funkcji rename do zmiany dowolnej liczby nazw kolumn.
Zmieńmy nazwę pojedynczej kolumny.
Funkcja zmiany nazwy pandy może również przyjąć funkcję jako dane wejściowe zamiast słownika. Na przykład, możemy napisać funkcję lambda, która pobierze bieżące nazwy kolumn i uwzględni tylko pierwsze trzy znaki dla nowych nazw kolumn.
Jak zmienić i nazwy wierszy / indeksy w Pandach?
Kolejną dobrą rzeczą związaną z funkcją zmiany nazwy pandy jest to, że możemy jej również użyć do zmiany indeksów lub nazw wierszy.
Musimy tylko użyć argumentu index i określić, chcemy zmień indeks, a nie kolumny.
Na przykład, aby zmienić nazwy wierszy 0 i 1 na „zero” i „jeden” w naszej ramce danych gapminder, skonstruujemy słownik ze starymi nazwami indeksów wierszy jako kluczami i nowym wierszem indeks jako wartości.
Widzimy, że tylko pierwsze dwa wiersze mają nowe nazwy zgodnie z zamierzeniami.
Jak jednocześnie zmienić nazwy kolumn i indeksy wierszy w Pandach?
Dzięki funkcji zmiany nazwy pandy można również zmienić zarówno nazwy kolumn, jak i nazwy wierszy jednocześnie, używając argumentów kolumny i indeksu do zmiany nazwy funkcji z odpowiednimi słownikami mapowania.
Zmieńmy nazwę kolumny „lifeExp” do „life_exp”, a także indeksy wierszy „0 & 1” do „zero i jeden”.
Czy jesteś nowy w Pandach? A zaczynasz ostatnio z Pandami? Sprawdź nasze nowe samouczki 101 pand o rozmiarze bajtów.