Cara menghapus kolom tanpa nama di pandas dataframe
Anda dapat menggunakan dua metode berikut untuk menghapus kolom di pandas DataFrame yang berisi “Tanpa Nama” di nama kolom:
Metode 1: Hapus Kolom Tanpa Nama Saat Mengimpor Data
df = pd. read_csv (' my_data.csv ', index_col= 0 )
Metode 2: Hapus Kolom Tanpa Nama Setelah Mengimpor Data
df = df. loc [:, ~df. columns . str . contains (' ^Unnamed ')]
Contoh berikut menunjukkan cara menggunakan masing-masing metode dalam praktik.
Contoh 1: Hapus kolom tanpa nama saat mengimpor data
Katakanlah kita membuat pandas DataFrame sederhana dan mengekspornya ke file 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 ')
Sekarang ketika kita mencoba membaca file ke dalam pandas DataFrame, kolom pertama diberi nama Unnamed: 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
Untuk menghindari hal ini, kita dapat menentukan index_col=0 untuk memberi tahu panda bahwa kolom pertama sebenarnya adalah kolom indeks:
#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
Contoh 2: Hapus kolom tanpa nama setelah mengimpor data
Katakanlah kita membuat pandas DataFrame sederhana dan mengekspornya ke file 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 ')
Sekarang anggaplah kita mengimpor file ini ke dalam pandas DataFrame:
#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
Untuk menghapus kolom yang berisi “Tanpa Nama” pada namanya, kita dapat menggunakan sintaks berikut:
#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
Perhatikan bahwa kolom “Tanpa Nama: 0” telah dihapus dari DataFrame.
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di panda:
Cara menghapus baris pertama di Pandas DataFrame
Cara menghapus kolom pertama di Pandas DataFrame
Cara menghapus kolom duplikat di Pandas