0Pricing
Pandas & NumPy Academy · Ders

Sütun Ekleme ve Bırakma

Hesaplanmış yeni sütunlar ekleyin, mevcut sütunları yeniden adlandırın ve drop() ile istenmeyen sütunları veya satırları bırakın.

Sütun Ekleme ve Bırakma, CoddyKit'te ücretsiz bir Pandas & NumPy Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Pandas & NumPy Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Pandas & NumPy Academy kursu toplamda 4 dersten oluşur.

Atama Yoluyla Yeni Sütun Ekleme

Sütun eklemenin en basit yolu doğrudan atamadır: df['new_col'] = values. Sağ taraf bir skaler (tüm satırlara yayılır), aynı uzunlukta bir liste, bir NumPy dizisi, dizine göre hizalanan bir Pandas Series veya mevcut sütunları içeren hesaplanmış bir ifade olabilir. Yeni sütunlar DataFrame'in sağına eklenir.

import pandas as pd

df = pd.DataFrame({'price': [10.0, 20.0, 15.0], 'qty': [3, 5, 2]})
df['revenue'] = df['price'] * df['qty']
df['currency'] = 'USD'
print(df)

Özellik Mühendisliği: Hesaplanmış Sütunlar

En yaygın DataFrame işlemlerinden biri, mevcut sütunlardan türetilmiş özellikler oluşturmaktır. Birikimli toplamları, oranları ve işaretleri hesaplayabilir veya kategorik değerleri tek bir vektörleştirilmiş ifadeyle kodlayabilirsiniz. Kaynak sütunlar değiştiğinde bu sütunları yeniden hesaplarsanız hesaplanmış sütunlar otomatik olarak güncellenir; bu da özellik mühendisliği işlem hatlarının yeniden üretimini kolaylaştırır.

import pandas as pd

df = pd.DataFrame({'salary': [50000, 80000, 60000],
                   'bonus': [5000, 12000, 7000]})
df['total_comp'] = df['salary'] + df['bonus']
df['bonus_pct'] = (df['bonus'] / df['salary'] * 100).round(1)
print(df)

Yöntem Zincirleme için assign() Kullanımı

df.assign(new_col=expression), özgün veriyi değiştirmeden eklenen sütuna sahip yeni bir DataFrame döndürür. Doğrudan atamanın aksine, yöntem zincirine doğal biçimde uyum sağlar. Tek çağrıda birden çok sütun ekleyebilir ve daha sonra tanımlanan sütun ifadelerinde, aynı assign() çağrısında daha önce tanımlanan sütunlara lambda işlevleri kullanarak başvurabilirsiniz.

import pandas as pd

df = pd.DataFrame({'x': [1, 2, 3], 'y': [4, 5, 6]})
result = (df
    .assign(sum_xy=lambda d: d['x'] + d['y'])
    .assign(ratio=lambda d: d['x'] / d['sum_xy'])
)
print(result)

rename() ile Sütunları Yeniden Adlandırma

df.rename(columns={'old': 'new'}), sütunları yeniden adlandırılmış yeni bir DataFrame döndürür. Diğer sütunları etkilemeden seçili sütunları yeniden adlandırmak için bir sözlük iletin. İşlev kullanarak da yeniden adlandırabilirsiniz: df.rename(columns=str.upper) tüm sütun adlarını büyük harfe dönüştürür. Farklı kaynaklardan gelen DataFrame'leri birleştirmeden önce anahtar sütunların hizalandığından emin olmak için her zaman yeniden adlandırma yapın.

import pandas as pd

df = pd.DataFrame({'a': [1, 2], 'b': [3, 4], 'c': [5, 6]})
renamed = df.rename(columns={'a': 'alpha', 'b': 'beta'})
print(renamed.columns.tolist())   # ['alpha', 'beta', 'c']

# Rename all columns to uppercase
print(df.rename(columns=str.upper).columns.tolist())  # ['A', 'B', 'C']

Sütun Adlarını Temizleme

Gerçek dünya sütun adlarında genellikle boşluklar, özel karakterler veya tutarsız büyük-küçük harf kullanımı bulunur. Yaygın bir ön işleme adımı, adları standartlaştırmaktır: baştaki ve sondaki boşlukları kaldırın, küçük harfe dönüştürün ve boşlukları alt çizgilerle değiştirin. Bu, sütunlara nokta gösterimiyle erişilebilmesini sağlar ve SQL benzeri sorgu dizelerindeki tırnak işareti sorunlarını önler.

import pandas as pd

df = pd.DataFrame(columns=['First Name', 'Last Name', 'Email Address'])
df.columns = (df.columns
    .str.strip()
    .str.lower()
    .str.replace(' ', '_', regex=False)
)
print(df.columns.tolist())  # ['first_name', 'last_name', 'email_address']

Belirli Bir Konuma Sütun Ekleme

df.insert(loc, column, value), bir sütunu tamsayı konumu olan loc değerine ekler ve diğer sütunları sağa kaydırır. Yeni sütunun sonda değil, ilişkili sütunların yanında görünmesini istediğinizde kullanışlıdır. assign() yönteminin aksine DataFrame'i yerinde değiştirir.

import pandas as pd

df = pd.DataFrame({'name': ['A', 'B'], 'score': [80, 90]})
df.insert(1, 'grade', ['B', 'A'])
print(df)
#   name grade  score
# 0    A     B     80
# 1    B     A     90

drop() ile Sütunları Kaldırma

df.drop(columns=['col1', 'col2']), belirtilen sütunları içermeyen yeni bir DataFrame döndürür. Eski söz dizimi olan df.drop(['col1', 'col2'], axis=1) de çalışır; ancak okunabilirliği daha düşüktür. Yerinde kaldırmak için inplace=True aktarın. Özgün DataFrame'i karşılaştırma veya geri alma amacıyla korumak için işlem zincirlerinde her zaman yeni bir DataFrame döndürmeyi tercih edin.

import pandas as pd

df = pd.DataFrame({'a': [1,2], 'b': [3,4], 'c': [5,6], 'd': [7,8]})
cleaned = df.drop(columns=['b', 'd'])
print(cleaned.columns.tolist())  # ['a', 'c']

drop() ile Satırları Kaldırma

df.drop(index=['r1', 'r2']), satırları etiketlerine göre kaldırır. df.drop([0, 2]), varsayılan tamsayı dizinindeki 0 ve 2 numaralı satırları kaldırır. Satırları kaldırma, veri temizliğinden sonra bilinen hatalı kayıtları, aykırı değerleri veya deneme satırlarını kaldırmak için sıkça kullanılır. Koşula dayalı kaldırma işlemlerinde kodun okunabilir kalması için Boole dizinlemeyi tercih edin.

import pandas as pd

df = pd.DataFrame({'x': [10, 20, 30, 40]}, index=['a', 'b', 'c', 'd'])
trimmed = df.drop(index=['b', 'd'])
print(trimmed)
#     x
# a  10
# c  30

Bir Sütunu Kaldırıp Döndürmek için pop()

df.pop('col'), sütunu DataFrame'den yerinde kaldırır ve onu Series olarak döndürür. Hedef sütunu (etiketi) bir özellik matrisinden ayırmanız gerektiğinde kullanışlıdır: sütunu DataFrame'den kaldırır ve bir modelde y değişkeni olarak kullanmak üzere ayrı tutarsınız.

import pandas as pd

df = pd.DataFrame({'feature1': [1,2], 'feature2': [3,4], 'target': [0,1]})
y = df.pop('target')   # removes column and returns as Series
X = df                 # remaining features
print(y.tolist())      # [0, 1]
print(X.columns.tolist())  # ['feature1', 'feature2']

Sütunları Yeniden Sıralama

Sütunları yeniden sıralamak için df[['col3', 'col1', 'col2']] ifadesini kullanarak onları istediğiniz sırada seçin. Yalnızca birkaç sütunu taşımak istediğiniz büyük DataFrame'lerde, istediğiniz sırayı program aracılığıyla hesaplayın: öncelikli sütunları başa alın ve geri kalanların ardından gelmesine izin verin. Bu, Excel'e aktarmadan önce gerçekleştirilen yaygın bir raporlama adımıdır.

import pandas as pd

df = pd.DataFrame({'id': [1,2], 'score': [80,90], 'name': ['A','B']})
# Move 'name' and 'id' to front
cols = ['name', 'id'] + [c for c in df.columns if c not in ['name', 'id']]
df = df[cols]
print(df.columns.tolist())  # ['name', 'id', 'score']

Mevcut Sütun Değerlerini Güncelleme

Mevcut bir sütundaki tüm değerleri güncellemek, yeni bir sütun eklemeyle aynı atama söz dizimini kullanır: df['col'] = new_values. Yalnızca bir koşulla eşleşen satırları güncellemek için df.loc[mask, 'col'] = value kullanın. Güncellemelerde zincirleme dizinlemeyi asla kullanmayın; SettingWithCopyWarning uyarısından kaçınmak için her zaman .loc kullanın.

import pandas as pd

df = pd.DataFrame({'name': ['Alice', 'Bob', 'Carol'], 'score': [45, 80, 92]})
# Set scores below 50 to 50 (floor)
df.loc[df['score'] < 50, 'score'] = 50
print(df['score'].tolist())  # [50, 80, 92]

Hızlı Kontrol

Bu derste sütun ekleme ve kaldırma konusundaki anlayışınızı sınayın.

Ders Özeti

Bu derste şunları öğrendiniz: yeni sütunlar atama veya yöntem zincirleriyle uyumlu assign() aracılığıyla eklenir, rename(), verileri değiştirmeden sütun adlarını değiştirir ve drop(), sütunları veya satırları kaldırır ve varsayılan olarak yeni bir DataFrame döndürür. Sırada herhangi bir DataFrame'i hızlıca incelemek için head(), tail(), info() ve describe() kullanacağız.

Sıkça Sorulan Sorular

“Sütun Ekleme ve Bırakma” dersi ücretsiz mi?

Evet — “Sütun Ekleme ve Bırakma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Pandas & NumPy Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Pandas & NumPy Academy kursu toplamda 4 dersten oluşur.

“Sütun Ekleme ve Bırakma” dersinde ne öğreneceğim?

Hesaplanmış yeni sütunlar ekleyin, mevcut sütunları yeniden adlandırın ve drop() ile istenmeyen sütunları veya satırları bırakın. Pandas & NumPy Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Pandas & NumPy Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Pandas & NumPy Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Sütun Ekleme ve Bırakma” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Pandas & NumPy Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Pandas & NumPy Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. DataFrames Oluşturma
  2. Sütun ve Satırları Seçme
  3. Sütun Ekleme ve Bırakma
  4. Temel DataFrame İncelemesi
← Pandas & NumPy Academy Sayfasına Dön