Veri Bilimi

Pandas Python'da pivot tablo nasıl oluşturulur

Pandas Python'da pivot tablo nasıl oluşturulur
Panda'nın python'unda Pivot tablosu, bir veri tablosundan türetilen toplamlar, sayılar veya toplama işlevleri içerir. Toplama işlevleri, farklı özellikler veya değerler üzerinde kullanılabilir. Bir pivot tablo, sütun kategorik değerleri de dahil olmak üzere farklı değerlere göre gruplanmış tablo verilerini özetlememizi sağlar.

Panda'nın pivot tablosunu kullanmadan önce verilerinizi ve pivot tablo aracılığıyla çözmeye çalıştığınız soruları anladığınızdan emin olun. Bu yöntemi kullanarak güçlü sonuçlar elde edebilirsiniz. Bu yazıda pandas python'da nasıl pivot tablo oluşturulacağını detaylandıracağız.

Excel dosyasından Verileri Oku

Gıda satışlarının excel veri tabanını indirdik. Uygulamaya başlamadan önce, excel veritabanı dosyalarını okumak ve yazmak için gerekli bazı paketleri kurmanız gerekir. pycharm düzenleyicinizin terminal bölümüne aşağıdaki komutu yazın:

pip yükleme xlwt openpyxl xlsxwriter xlrd

Şimdi, excel sayfasından verileri okuyun. Gerekli panda kitaplıklarını içe aktarın ve veritabanınızın yolunu değiştirin. Ardından aşağıdaki kodu çalıştırarak dosyadan veriler alınabilir.

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
dtfrm = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
yazdır(dtfrm)

Burada veriler, gıda satışları excel veri tabanından okunur ve dataframe değişkenine aktarılır.

Pandas Python kullanarak Pivot Tablo oluşturun

Aşağıda, gıda satış veritabanını kullanarak basit bir pivot tablo oluşturduk. Pivot tablo oluşturmak için iki parametre gereklidir. Birincisi dataframe'e geçirdiğimiz veriler, diğeri ise bir indeks.

Bir Dizinde Özet Veriler

Dizin, verilerinizi gereksinimlere göre gruplandırmanıza olanak tanıyan bir özet tablonun özelliğidir. Burada, temel bir pivot tablo oluşturmak için 'Ürün'ü indeks olarak aldık.

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
veri çerçevesi = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe,index=["Ürün"])
yazdır(pivot_tble)

Yukarıdaki kaynak kodu çalıştırdıktan sonra aşağıdaki sonuç gösterilir:

Sütunları açıkça tanımlayın

Verilerinizin daha fazla analizi için, dizinle birlikte sütun adlarını açıkça tanımlayın. Örneğin, sonuçta her ürünün yalnızca UnitPrice değerini görüntülemek istiyoruz. Bu amaçla, pivot tablonuzdaki değerler parametresini ekleyin. Aşağıdaki kod size aynı sonucu verir:

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
veri çerçevesi = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe, index='Ürün', değerler='BirimFiyat')
yazdır(pivot_tble)

Çoklu indeksli Pivot Verileri

Veriler indeks olarak birden fazla özelliğe göre gruplandırılabilir. Çoklu indeks yaklaşımını kullanarak, veri analizi için daha spesifik sonuçlar elde edebilirsiniz. Örneğin, ürünler farklı kategoriler altında gelir. Böylece her bir ürünün mevcut 'Miktar' ve 'BirimFiyat' ile 'Ürün' ve 'Kategori' indeksini aşağıdaki gibi görüntüleyebilirsiniz:

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
veri çerçevesi = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe,index=["Kategori","Ürün"],değerler=["BirimFiyat", "Miktar"])
yazdır(pivot_tble)

Pivot tablosunda Toplama İşlevini Uygulama

Bir pivot tabloda, aggfunc farklı özellik değerleri için uygulanabilir. Sonuç tablosu, özellik verilerinin özetidir. Toplama işlevi, pivot_table'daki grup verileriniz için geçerlidir. Varsayılan olarak toplama işlevi np'dir.anlamına gelmek(). Ancak, kullanıcı gereksinimlerine bağlı olarak, farklı veri özellikleri için farklı toplama işlevleri uygulanabilir.

Misal:

Bu örnekte toplama işlevleri uyguladık. np.'Miktar' özelliği için sum() işlevi kullanılır ve np.'UnitPrice' özelliği için ortalama () işlevi.

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
veri çerçevesi = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe,index=["Kategori","Ürün"], aggfunc='Miktar': np.toplam,'BirimFiyat': np.anlamına gelmek)
yazdır(pivot_tble)

Farklı özellikler için toplama işlevini uyguladıktan sonra aşağıdaki çıktıyı alırsınız:

value parametresini kullanarak belirli bir özellik için toplama işlevini de uygulayabilirsiniz. Özelliğin değerini belirtmezseniz, veritabanınızın sayısal özelliklerini toplar. Verilen kaynak kodunu izleyerek, belirli bir özellik için toplama işlevini uygulayabilirsiniz:

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
veri çerçevesi = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe, index=['Ürün'], değerler=['BirimFiyat'], aggfunc=np.anlamına gelmek)
yazdır(pivot_tble)

Değerler ve Değerler Arasındaki Farklılık. Pivot Tablodaki Sütunlar

Değerler ve sütunlar, pivot_table'daki ana kafa karıştırıcı noktadır. Sütunların isteğe bağlı alanlar olduğunu ve sonuçta elde edilen tablonun değerlerini üstte yatay olarak gösterdiğini unutmamak önemlidir. Toplama işlevi aggfunc, listelediğiniz değerler alanına uygulanır.

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
veri çerçevesi = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe,index=['Kategori','Ürün', 'Şehir'],values=['BirimFiyat', 'Miktar'],
sütunlar=['Bölge'],aggfunc=[np.toplamı])
yazdır(pivot_tble)

Pivot Tabloda Eksik Verileri İşleme

Pivot tablosundaki eksik değerleri aşağıdakileri kullanarak da işleyebilirsiniz 'dolgu_değeri' Parametre. Bu, NaN değerlerini doldurmak için sağladığınız bazı yeni değerlerle değiştirmenize izin verir.

Örneğin, aşağıdaki kodu çalıştırarak yukarıdaki sonuç tablosundaki tüm boş değerleri kaldırdık ve tüm sonuç tablosunda NaN değerlerini 0 ile değiştirdik.

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
veri çerçevesi = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe,index=['Kategori','Ürün', 'Şehir'],values=['BirimFiyat', 'Miktar'],
sütunlar=['Bölge'],aggfunc=[np.toplam], doldurma_değeri=0)
yazdır(pivot_tble)

Pivot Tabloda Filtreleme

Sonuç oluşturulduktan sonra, standart veri çerçevesi işlevini kullanarak filtreyi uygulayabilirsiniz. bir örnek alalım. BirimFiyatı 60'ın altında olan ürünleri filtreleyin. Fiyatı 60'ın altında olan ürünleri görüntüler.

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
veri çerçevesi = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx', index_col=0)
pivot_tble=pd.pivot_table(dataframe, index='Ürün', değerler='BirimFiyat', aggfunc='toplam')
low_price=pivot_tble[pivot_tble['UnitPrice'] < 60]
yazdır(düşük_fiyat)

Başka bir sorgulama yöntemi kullanarak sonuçları filtreleyebilirsiniz. Örneğin, çerez kategorisini aşağıdaki özelliklere göre filtreledik:

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
veri çerçevesi = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx', index_col=0)
pivot_tble=pd.pivot_table(dataframe,index=["Kategori","Şehir","Bölge"],values=["BirimFiyat", "Miktar"],aggfunc=np.toplamı)
pt=pivot_tble.sorgu('Kategori == ["Çerezler"]')
yazdır(pt)

Çıktı:

Pivot Tablo Verilerini Görselleştirin

Pivot tablo verilerini görselleştirmek için aşağıdaki yöntemi izleyin:

pandaları pd olarak içe aktar
numpy'yi np olarak içe aktar
matplotlib'i içe aktar.plt olarak pyplot
veri çerçevesi = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx', index_col=0)
pivot_tble=pd.pivot_table(dataframe,index=["Kategori","Ürün"],değerler=["BirimFiyat"])
pivot_tble.arsa(tür='bar');
plt.göstermek()

Yukarıdaki görselde farklı ürünlerin birim fiyatlarını kategorileri ile birlikte gösterdik.

Sonuç

Pandas python kullanarak veri çerçevesinden nasıl bir pivot tablo oluşturabileceğinizi araştırdık. Pivot tablo, veri kümelerinize ilişkin derin öngörüler oluşturmanıza olanak tanır. Çoklu indeks kullanarak basit bir pivot tablonun nasıl oluşturulacağını ve filtrelerin pivot tablolara nasıl uygulanacağını gördük. Ayrıca, pivot tablo verilerini çizmeyi ve eksik verileri doldurmayı da gösterdik.

Battle for Wesnoth Tutorial
The Battle for Wesnoth is one of the most popular open source strategy games that you can play at this time. Not only has this game been in developmen...
0 A.D. Tutorial
Out of the many strategy games out there, 0 A.D. manages to stand out as a comprehensive title and a very deep, tactical game despite being open sourc...
Unity3D Tutorial
Introduction to Unity 3D Unity 3D is a powerful game development engine. It is cross platform that is it allows you to create games for mobile, web, d...