Pandas dataframe'de sütunlar arasında nasıl döngü yapılır?


Pandas DataFrame’in sütunları arasında yineleme yapmak için aşağıdaki temel sözdizimini kullanabilirsiniz:

 for name, values in df. iteritems ():
  print (values)

Aşağıdaki örnekler, bu sözdiziminin pratikte aşağıdaki pandalar DataFrame ile nasıl kullanılacağını gösterir:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19],
                   ' assists ': [5, 7, 7, 9, 12],
                   ' rebounds ': [11, 8, 10, 6, 6]})

#view DataFrame
df

	points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6

Örnek 1: DataFrame’in tüm sütunlarını yineleyin

Aşağıdaki kod, bir panda DataFrame’in her sütununda nasıl yineleme yapılacağını gösterir:

 for name, values in df. iteritems ():
print (values)

0 25
1 12
2 15
3 14
4 19
Name: points, dtype: int64
0 5
1 7
2 7
3 9
4 12
Name: assists, dtype: int64
0 11
1 8
2 10
3 6
4 6
Name: rebounds, dtype: int64

Ayrıca her sütunda döngü yapmak ve yalnızca sütun adlarını yazdırmak için aşağıdaki sözdizimini de kullanabiliriz:

 for name, values in df. iteritems ():
print (name)

points
assists
rebounds

Örnek 2: Belirli sütunlar üzerinde yineleme

Aşağıdaki sözdizimi, bir pandas DataFrame’deki belirli sütunlar üzerinde nasıl yineleme yapılacağını gösterir:

 for name, values in df[[' points ', ' rebounds ']]. iteritems ():
  print (values)

0 25
1 12
2 15
3 14
4 19
Name: points, dtype: int64
0 11
1 8
2 10
3 6
4 6
Name: rebounds, dtype: int64

Belirli bir sütun aralığı üzerinde yineleme yapmak için aşağıdaki sözdizimini de kullanabiliriz:

 for name, values in df. iloc [:, 0:2] . iteritems ():
  print (values)

0 25
1 12
2 15
3 14
4 19
Name: points, dtype: int64
0 5
1 7
2 7
3 9
4 12
Name: assists, dtype: int64

iteritems() işlevine ilişkin tüm belgeleri burada bulabilirsiniz.

Ek kaynaklar

Pandalar’da seçilen sütunlara bir işlev nasıl uygulanır?
Pandalarda sütun sırası nasıl değiştirilir?
Pandalar’da sütunları dizine göre nasıl silebilirim?

Yorum ekle

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