Merhaba arkadaşlar, bu yazım önceki yazım olan CSV kütüphanesi ile CSV dosya okuma, yazma işlemlerinin Pandas kütüphanesi ile nasıl yapıldığına bakacağız.
Python’da CSV okumak için sadece CSV kütüphanesi kullanılmıyor. Pandas da CSV okumak ve yazmak için kullanılablir. Hatta veri analizi için Pandas daha sık kullanılmaktadır.
Pandas yüksek performanslı veri analiz araçları ve kullanımı kolay açık kaynaklı bir Python kütüphanesidir. Pandas tüm editörler ve ideler tarafından sorunsuz çalıştırılabilmektedir. Ben veri analizi için pandas kullandığımdan Anaconda kullanıyorum ve Pandas kütüphanesi hazır olarak gelmektedir.
Hazır olarak gelmeyen Anaconda sürümlerinde:
conda install pandas
diğer ide/editörler için ise:
pip install pandas
yazarak pandas kütüphanesi kurulabilir. Bu yazımda Pandas içeriğine çok girmeden CSV dosyaları okuma ve yazma kısmına geçelim.
Pandas ile CSV Dosyalarını Okuma
Pandas ile CSV dosyaları okumak ve gücünü göstermek için aşağıdaki gibi bir csv dosyası oluşturdum.
CSV’yi pandas kullanarak okumak tek satırda bitiyor. CSV kütüphanesi gibi uzun uzun yazmıyoruz.
import pandas #kütüphaneyi içe aktardık df = pandas.read_csv('maas.csv') #okuduk print(df) #yazdırdık
Bu kodumuzun ekran çıktısı ise aşağıdaki gibi olacaktır.
Burada Pandas’ın CSV kütüphanesine göre avantajlarına bakacak olursak, sütun adını, satırları otomatik olarak okudu ve varsayılan ayraç kullandığımızdan ayraç parametresini girmedik. Şayet olur da farklı bir ayraç varsa bunun için sep=”_kullanilan_ayraç” şeklinde girebilirsiniz. Ayrıca burada dikkat etmemiz gereken diğer bir unsur doğum yılı sütununu sayısal veri, isim parametresini de string olarak alması olacaktır.
Bu örneğimizde Pandas bize otomatik olarak index numarası verdi. Bunun yerine farklı bir alanı da index olarak seçebilirsiniz. Bunun için aşağıdaki kod satırı kullanılacaktır.
df = pandas.read_csv(‘maas.csv’, index_col=’isim’)
Eğer csv dosyası içindeki başlıkların yerine kendi başlıklarınızı girmek istiyorsanız bunu aşağıdaki şekilde yapabilirsiniz.
df2 = pandas.read_csv('maas.csv', header=0, names=['isim', 'dogum_yili','tecrube', 'maas'])
Bu kodumuzda dogum yili alanını dogum_yili olarak değiştirdim ve yeni bir başlık oluşturdum. Ekran çıktısı aşağıdaki gibi olmaktadır.
Temel olarak okuma işlemi örneklerimiz bu kadar. Şimdi ise yazma işlemlerine bakalım.
CSV Dosyaları Yazma
Başlıklarda düzenleme yaptıktan sonra bunu yeni bir csv dosyası haline getirmezsek bir anlamı kalmıyor değişiklik yapmanın. Bu yukarıdaki değişikliğini csv dosyası şeklinde nasıl yazılır görelim.
#pandas csv yazma örneği df3 = pandas.read_csv('maas.csv', header=0, names=['isim','dogumYili','tecrube','maas']) df3.to_csv('yeni_Maas.csv')
Bu kodu çalıştırdıktan sonra klasör içerisinde yeni_Maas.csv dosyası oluşmuş olacaktır. Buradaki tek farklı kısım to_csv() metotudur.
Pandas ile CSV dosya okuma ve yazma işlemini kısaca anlattım. Daha detaylı Pandas anlatımları diğer makalelerde ele alınacaktır.