Givet en Pandas DataFrame, lad os se, hvordan man omdøber kolonner i Pandas med eksempler. Her vil vi diskutere 5 forskellige måder at omdøbe kolonnenavne i pandas DataFrame.
Sådan omdøbes kolonner i Pandas DataFrame
Metode 1: Brug af rename() funktion
En måde at omdøbe kolonnerne i en Pandas Dataframe er ved at bruge rename()-funktionen. Denne metode er ret nyttig, når vi skal omdøbe nogle udvalgte kolonner, fordi vi kun skal angive oplysninger for de kolonner, der skal omdøbes.
Eksempel 1: Omdøb en enkelt kolonne .
Python
# Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd) rankings_pd.rename(columns = {'test':'TEST'}, inplace = True) # After renaming the columns print('
After modifying first column:
', rankings_pd.columns)> Produktion:
Eksempel 2: Omdøb flere kolonner .
Python # Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd.columns) rankings_pd.rename(columns = {'test':'TEST', 'odi':'ODI', 't20':'T20'}, inplace = True) # After renaming the columns print(rankings_pd.columns)> Produktion:
Metode 2: Ved at tildele en liste over nye kolonnenavne
Kolonnerne kan også omdøbes ved direkte at tildele en liste, der indeholder de nye navne, til kolonneattributten for det Dataframe-objekt, som vi ønsker at omdøbe kolonnerne for. Ulempen ved denne metode er, at vi skal give nye navne til alle kolonnerne, selvom vi kun vil omdøbe nogle af kolonnerne.
Python # Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd.columns) rankings_pd.columns = ['TEST', 'ODI', 'T-20'] # After renaming the columns print(rankings_pd.columns)> Produktion:
Metode 3: Omdøb kolonnenavne ved hjælp af DataFrame set_axis() funktion
I dette eksempel vil vi omdøbe kolonnenavnet ved hjælp af set_axis-funktionen, vi vil videregive det nye kolonnenavn og akse, der skal erstattes med et nyt navn i kolonnen som en parameter.
Python # Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd.columns) rankings_pd.set_axis(['A', 'B', 'C'], axis='columns') # After renaming the columns print(rankings_pd.columns) rankings_pd.head()> Produktion:
side ned tastatur
Metode 4: Omdøb kolonnenavne ved hjælp af DataFrame add_prefix() og add_suffix() funktioner
I dette eksempel vil vi omdøbe kolonnenavnet ved at bruge funktionen add_Sufix og add_Prefix, vi vil videregive præfikset og suffikset, der skal tilføjes til for- og efternavnet på kolonnenavnet.
Python # Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd.columns) rankings_pd = rankings_pd.add_prefix('col_') rankings_pd = rankings_pd.add_suffix('_1') # After renaming the columns rankings_pd.head()> Produktion:
col_test_1 col_odi_1 col_t20_1 0 India England Pakistan 1 South Africa India India 2 England New Zealand Australia 3 New Zealand South Africa England 4 Australia Pakistan New Zealand>
Metode 5: Erstat specifikke tekster af kolonnenavne ved hjælp af Dataframe.columns.str.replace-funktionen
I dette eksempel vil vi omdøbe kolonnenavnet ved hjælp af erstatningsfunktionen, vi vil videregive det gamle navn med det nye navn som parameter for kolonnen.
Python # Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd.columns) # df = rankings_pd rankings_pd.columns = rankings_pd.columns.str.replace('test', 'Col_TEST') rankings_pd.columns = rankings_pd.columns.str.replace('odi', 'Col_ODI') rankings_pd.columns = rankings_pd.columns.str.replace('t20', 'Col_T20') rankings_pd.head()> Produktion: