Python Pandas ile Temel İşlemler-2 (Sütun Ekleme/Kaldırma)

Pandas ile temel işlemlere devam ediyoruz. Bir önceki yazımızda ufo verimizi yüklemiştik.

Pandas ile Sütun Eklemek ve Kaldırmak

SQL’den hatırladığımız drop sözcüğü burada da iş başında. Bir sütunu tablodan (dataframe) kaldırmak istiyorsak drop() metodunu kullanıyoruz. Bir kaç argüman ile seçeneklerimizi arttırabiliyoruz. Sütun kaldırmadan önce yeni bir sütun ekleyelim ve onu kaldıralım. Ekleyeceğim yeni sütun 10.000 ile 200.000 arasında rakamlardan oluşacak ve bu sütundaki rakamları ufonun görüldüğü şehrin nüfusu kabul edeceğim.

from random import randint

Nüfus için rastgele rakamlar elde etmek için random randint kütüphanesini kullanıyoruz. Aşağıda bir for döngüsüyle tablomuzun satır sayısı olan 18.241 adet rastgele rakam üretip bu rakamları rastgele_sayilar adında bir Python listesine ekliyoruz.

rastgele_sayilar = []
for i in range(0,18241):
    rastgele_sayilar.append(randint(10000,200000))

Bakalım listemizin uzunluğu tablo satır sayısıyla aynı mı?

len(rastgele_sayilar)
18241

evet aynıymış. Şimdi yeni bir sütun oluşturarak rastgele_sayilar listemizi bu sütuna atayalım.

ufo['nufus'] = rastgele_sayilar

head() metoduyla tablomuzun yeni halini görelim.

ufo.head()
City Colors Reported Shape Reported State Time nufus
0 Ithaca NaN TRIANGLE NY 6/1/1930 22:00 81348
1 Willingboro NaN OTHER NJ 6/30/1930 20:00 50670
2 Holyoke NaN OVAL CO 2/15/1931 14:00 84373
3 Abilene NaN DISK KS 6/1/1931 13:00 83502
4 New York Worlds Fair NaN LIGHT NY 4/18/1933 19:00 58124

Gördüğümüz gibi nufus adında yeni sütun tabloya eklendi. Şimdi eklediğimiz bu sütunu kaldıralım.

ufo.drop('nufus',axis=1, inplace=True)

Yukarıdaki kodda axis=1 sütun demektir. inplace=True ise temelli kaldır, kaldıyormuş gibi yapma 🙂 demektir.

Pandas ile Satır Silmek

drop() metodu sütun kaldırdığı gibi satır da kaldırır. Metodumuz aynı, sadece axis argümanı 0 (sıfır) değerini alır. Hemen ilk iki satırı (0 ve 1 indekse sahip satırlar) kaldıralım. Satırı seçmek için Pandas’ın kendi atadığı en soldaki satır numarası değerini kullanacağız.

ufo.drop([0,1], axis=0, inplace=True)

Şimdi head() metoduyla tekrar bir bakalım gerçekten ilk iki satır silinmiş mi?

ufo.head()
City Colors Reported Shape Reported State Time
2 Holyoke NaN OVAL CO 2/15/1931 14:00
3 Abilene NaN DISK KS 6/1/1931 13:00
4 New York Worlds Fair NaN LIGHT NY 4/18/1933 19:00
5 Valley City NaN DISK ND 9/15/1934 15:30
6 Crater Lake NaN CIRCLE CA 6/15/1935 0:00

Görüldüğü gibi 0 ve 1’inci satırlar silinmiş.

Bir cevap yazın

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