Pandas dataframe'e sayı sütunu nasıl eklenir


Bir pandas DataFrame’e “sayı” sütunu eklemek için aşağıdaki temel sözdizimini kullanabilirsiniz:

 df[' var1_count '] = df. groupby (' var1 ')[' var1 ']. transform (' count ')

Bu özel sözdizimi, DataFrame’e var1 adı verilen sütundaki değer sayısını içeren var1_count adlı bir sütun ekler.

Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.

Örnek: Pandas’a bir sayı sütunu ekleme

Çeşitli basketbol oyuncuları hakkında bilgi içeren aşağıdaki pandalar DataFrame’e sahip olduğumuzu varsayalım:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'],
                   ' pos ': ['Gu', 'Fo', 'Fo', 'Fo', 'Gu', 'Gu', 'Fo', 'Fo'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 28]})

#view DataFrame
print (df)

  team pos points
0 A Gu 18
1 A Fo 22
2 A Fo 19
3 B Fo 14
4 B Gu 14
5 B Gu 11
6 B Fo 20
7 B Fo 28

Her takımın sayısını içeren Team_count adlı bir sütun eklemek için aşağıdaki kodu kullanabiliriz:

 #add column that shows total count of each team
df[' team_count '] = df. groupby (' team ')[' team ']. transform (' count ')

#view updated DataFrame
print (df)

  team pos points team_count
0 A Gu 18 3
1 A Fo 22 3
2 A Fo 19 3
3 B Fo 14 5
4 B Gu 14 5
5 B Gu 11 5
6 B Fo 20 5
7 B Fo 28 5

Takım değeri A olan 3 satır ve takım değeri B olan 5 satır vardır.

Bu yüzden:

  • Takımın A’ya eşit olduğu her satır için takım_sayısı sütunundaki değer 3’tür .
  • Takımın B’ye eşit olduğu her satır için takım_sayısı sütunundaki değer 5’tir .

Ayrıca çeşitli değişkenleri bir arada gruplayan bir “hesap” sütunu da ekleyebilirsiniz.

Örneğin, aşağıdaki kod, ekibi ve konum değişkenlerini gruplandıran bir “sayı” sütununun nasıl ekleneceğini gösterir:

 #add column that shows total count of each team and position
df[' team_pos_count '] = df. groupby ([' team ', ' pos ')[' team ']. transform (' count ')

#view updated DataFrame
print (df)

  team pos points team_pos_count
0 A Gu 18 1
1 A Fo 22 2
2 A Fo 19 2
3 B Fo 14 3
4 B Gu 14 2
5 B Gu 11 2
6 B Fo 20 3
7 B Fo 28 3

Sonuçtan şunları görebiliriz:

  • Takım sütununda A’yı ve konum sütununda Gu’yu içeren 1 satır vardır.
  • Takım sütununda A ve konum sütununda Fo içeren 2 satır vardır.
  • Takım sütununda B ve konum sütununda Fo içeren 3 satır vardır.
  • Takım sütununda B ve konum sütununda Gu içeren 2 satır vardır.

Ek kaynaklar

Aşağıdaki eğitimlerde pandalarda diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

Pandalar: GroupBy ve değer sayıları nasıl kullanılır?
Pandalar: GroupBy’yi çöp kutusu sayımı ile kullanma
Pandalar: Koşullu bir sütundaki değerler nasıl sayılır?

Yorum ekle

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