Pandas dataframe'de dizine göre sütunlar nasıl seçilir


Genellikle pandaların DataFrame’indeki sütunları dizin değerlerine göre seçmek isteyebilirsiniz.

Tamsayı indekslemeye dayalı sütunları seçmek istiyorsanız .iloc işlevini kullanabilirsiniz.

Sütunları etiket indekslemeye göre seçmek istiyorsanız .loc işlevini kullanabilirsiniz.

Bu eğitimde, bu işlevlerin her birinin pratikte nasıl kullanılacağına dair bir örnek verilmektedir.

Örnek 1: Tamsayı Dizine Eklemeye Göre Sütunları Seçin

Aşağıdaki kod, bir pandas DataFrame’in nasıl oluşturulacağını ve tamsayı dizin değeri 3 olan sütunu seçmek için .iloc’un nasıl kullanılacağını gösterir:

 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

Birden çok sütun seçmek için benzer sözdizimini kullanabiliriz:

 #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

Veya bir aralıktaki tüm sütunları seçebiliriz:

 #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

Örnek 2: Sütunları Etiket Dizinine Göre Seçme

Aşağıdaki kod, bir pandas DataFrame’in nasıl oluşturulacağını ve “bounces” dizin etiketine sahip sütunu seçmek için .loc’un nasıl kullanılacağını gösterir:

 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

Farklı dizin etiketlerine sahip birden çok sütun seçmek için benzer sözdizimini kullanabiliriz:

 #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

Veya bir aralıktaki tüm sütunları seçebiliriz:

 #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

İlgili: Pandalar loc vs iloc: fark nedir?

Ek kaynaklar

Aşağıdaki eğitimlerde pandalarda diğer yaygın işlemlerin nasıl gerçekleştirileceği açıklanmaktadır:

Pandas DataFrame’de dizine göre nasıl gruplandırılır
Pandas DataFrame’de dizine göre satırlar nasıl seçilir
Pandas DataFrame’de satır numaraları nasıl alınır?
Pandas DataFrame’deki dizin sütunu nasıl kaldırılır

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir