Cara memilih kolom berdasarkan indeks di pandas dataframe


Seringkali Anda mungkin ingin memilih kolom di pandas DataFrame berdasarkan nilai indeksnya.

Jika Anda ingin memilih kolom berdasarkan pengindeksan bilangan bulat, Anda dapat menggunakan fungsi .iloc .

Jika Anda ingin memilih kolom berdasarkan pengindeksan label, Anda dapat menggunakan fungsi .loc .

Tutorial ini memberikan contoh cara menggunakan masing-masing fungsi ini dalam praktik.

Contoh 1: Pilih Kolom Berdasarkan Pengindeksan Integer

Kode berikut menunjukkan cara membuat pandas DataFrame dan menggunakan .iloc untuk memilih kolom dengan nilai indeks integer 3 :

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B'],
                   ' points ': [11, 7, 8, 10, 13, 13],
                   ' assists ': [5, 7, 7, 9, 12, 9],
                   ' rebounds ': [11, 8, 10, 6, 6, 5]})

#view DataFrame
df

	team points assists rebounds
0 A 11 5 11
1 To 7 7 8
2 to 8 7 10
3 B 10 9 6
4 B 13 12 6
5 B 13 9 5

#select column with index position 3
df. iloc [:, 3]

0 11
1 8
2 10
3 6
4 6
5 5
Name: rebounds, dtype: int64

Kita dapat menggunakan sintaks serupa untuk memilih beberapa kolom:

 #select columns with index positions 1 and 3
df. iloc [:, [1, 3]]


        rebound points
0 11 11
1 7 8
2 8 10
3 10 6
4 13 6
5 13 5

Atau kita dapat memilih semua kolom dalam suatu rentang:

 #select columns with index positions in range 0 through 3
df. iloc [:, 0:3]

        team points assists
0 to 11 5
1 To 7 7
2 to 8 7
3 B 10 9
4 B 13 12
5 B 13 9

Contoh 2: Pilih Kolom Berdasarkan Pengindeksan Label

Kode berikut menunjukkan cara membuat pandas DataFrame dan menggunakan .loc untuk memilih kolom dengan label indeks “bouncing” :

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B'],
                   ' points ': [11, 7, 8, 10, 13, 13],
                   ' assists ': [5, 7, 7, 9, 12, 9],
                   ' rebounds ': [11, 8, 10, 6, 6, 5]})

#view DataFrame
df

	team points assists rebounds
0 A 11 5 11
1 To 7 7 8
2 to 8 7 10
3 B 10 9 6
4 B 13 12 6
5 B 13 9 5

#select column with index label 'rebounds'
df. loc [:, ' rebounds ']

0 11
1 8
2 10
3 6
4 6
5 5
Name: rebounds, dtype: int64

Kita dapat menggunakan sintaks serupa untuk memilih beberapa kolom dengan label indeks berbeda:

 #select the columns with index labels 'points' and 'rebounds'
df. loc [:,[' points ',' rebounds ']]

	rebound points
0 11 11
1 7 8
2 8 10
3 10 6
4 13 6
5 13 5

Atau kita dapat memilih semua kolom dalam suatu rentang:

 #select columns with index labels between 'team' and 'assists'
df. loc [:, ' team ':' assists ']

	team points assists
0 to 11 5
1 To 7 7
2 to 8 7
3 B 10 9
4 B 13 12
5 B 13 9

Terkait: Pandas loc vs iloc: apa bedanya?

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di panda:

Cara mengelompokkan berdasarkan indeks dalam Pandas DataFrame
Cara memilih baris berdasarkan indeks di Pandas DataFrame
Cara mendapatkan nomor baris di Pandas DataFrame
Cara menghapus kolom indeks di Pandas DataFrame

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *