Jak usunąć nienazwaną kolumnę w pandas dataframe


Możesz użyć następujących dwóch metod, aby usunąć kolumnę w ramce danych pand, która zawiera „Bez nazwy” w nazwie kolumny:

Metoda 1: Usuń nienazwaną kolumnę podczas importowania danych

 df = pd. read_csv (' my_data.csv ', index_col= 0 )

Metoda 2: Usuń nienazwaną kolumnę po zaimportowaniu danych

 df = df. loc [:, ~df. columns . str . contains (' ^Unnamed ')]

Poniższe przykłady pokazują, jak zastosować każdą metodę w praktyce.

Przykład 1: Usuń nienazwaną kolumnę podczas importowania danych

Załóżmy, że tworzymy prostą ramkę DataFrame pand i eksportujemy ją do pliku CSV:

 import pandas as pd

#createDataFrame
df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F'],
                    ' points ': [4, 4, 6, 8, 9, 5],
                    ' rebounds ': [12, 7, 8, 8, 5, 11]})

#view DataFrame
print (df1)

  team points rebounds
0 to 4 12
1 B 4 7
2 C 6 8
3 D 8 8
4 E 9 5
5 F 5 11

#export DataFrame to CSV file
df1. to_csv (' my_data.csv ')

Teraz, gdy próbujemy wczytać plik do ramki danych pandy, pierwsza kolumna nosi nazwę Bez nazwy: 0

 #import CSV file
df2 = pd. read_csv (' my_data.csv ')

#view DataFrame
print (df2)

   Unnamed: 0 team points rebounds
0 0 A 4 12
1 1 B 4 7
2 2 C 6 8
3 3 D 8 8
4 4 E 9 5
5 5 F 5 11

Aby tego uniknąć, możemy określić indeks_col=0 , aby poinformować pandy, że pierwsza kolumna jest w rzeczywistości kolumną indeksu:

 #import CSV file
df2 = pd. read_csv (' my_data.csv ', index_col= 0 )

#view DataFrame
print (df2)

  team points rebounds
0 to 4 12
1 B 4 7
2 C 6 8
3 D 8 8
4 E 9 5
5 F 5 11

Przykład 2: Usuń nienazwaną kolumnę po zaimportowaniu danych

Załóżmy, że tworzymy prostą ramkę DataFrame pand i eksportujemy ją do pliku CSV:

 import pandas as pd

#createDataFrame
df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F'],
                    ' points ': [4, 4, 6, 8, 9, 5],
                    ' rebounds ': [12, 7, 8, 8, 5, 11]})

#export DataFrame to CSV file
df1. to_csv (' my_data.csv ')

Załóżmy teraz, że importujemy ten plik do ramki DataFrame pandy:

 #import CSV file
df2 = pd. read_csv (' my_data.csv ')

#view DataFrame
print (df2)

   Unnamed: 0 team points rebounds
0 0 A 4 12
1 1 B 4 7
2 2 C 6 8
3 3 D 8 8
4 4 E 9 5
5 5 F 5 11

Aby usunąć kolumnę zawierającą w nazwie „Bez nazwy”, możemy zastosować następującą składnię:

 #drop any column that contains "Unnamed" in column name
df2 = df2. loc [:, ~df2. columns . str . contains (' ^Unnamed ')]

#view updated DataFrame
print (df2)

  team points rebounds
0 to 4 12
1 B 4 7
2 C 6 8
3 D 8 8
4 E 9 5
5 F 5 11

Należy zauważyć, że kolumna „Bez nazwy: 0” została usunięta z ramki DataFrame.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w pandach:

Jak usunąć pierwszy wiersz w Pandas DataFrame
Jak usunąć pierwszą kolumnę w Pandas DataFrame
Jak usunąć zduplikowane kolumny w Pandach

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *