Size 8 verimli Python veri analizi becerisi gönderir (kodlu)

Kaynak: Know-how

Bu makale var 1300 kelime , Okumanız tavsiye edilir 5 dakika.

Bu makalede tanıtılan veri analizi yöntemi yalnızca işletim verimliliğini artırmakla kalmaz, aynı zamanda kodu daha "güzel" hale getirir.

İster bir Kaggle yarışmasına katılıyor olun, ister bir derin öğrenme uygulaması geliştiriyor olun, ilk adım her zaman veri analizidir. Bu makale, Python kullanarak veri analizi için yalnızca işletim verimliliğini artırmakla kalmayıp aynı zamanda kodu daha "güzel" hale getirebilen 8 yöntem sunar. .

Bir, bir satır kod Listeyi tanımlar

Belirli bir listeyi tanımlarken, bir For döngüsü yazmak çok zahmetlidir.Neyse ki, Python bu sorunu tek bir kod satırında çözmek için yerleşik bir yönteme sahiptir:

Aşağıda, For döngüsüyle bir liste oluşturmanın ve bir satır kod içeren bir liste oluşturmanın karşılaştırması verilmiştir:

x =

out =

x içindeki öğe için:

out.append (öğe ** 2)

çıktı)

# vs.

x =

out =

çıktı)

İki, Lambda ifadesi

Birkaç kez kullanamayacağınız işlevleri tanımlamaktan bıktınız mı? Lambda ifadeleri kurtarıcınızdır! Lambda ifadeleri, Python'da küçük, tek seferlik ve anonim işlev nesneleri oluşturmak için kullanılır. Sizin için bir işlev oluşturabilir.

Lambda ifadelerinin temel sözdizimi şöyledir:

lambda bağımsız değişkenleri: ifade

Bir lambda ifadesi olduğu sürece, normal bir işlevin gerçekleştirebileceği herhangi bir işlemi tamamlayabileceğinizi unutmayın. Lambda ifadelerinin gücünü aşağıdaki örneklerden deneyimleyebilirsiniz:

çift = lambda x: x * 2

baskı (çift (5))

10

Üç, Harita ve Fiter

Lambda ifadelerinde ustalaştıktan sonra, daha güçlü işlevler elde etmek için bunları Harita ve Filtre işlevleriyle kullanmayı öğrenin.

Özellikle, harita listedeki her öğe üzerinde bazı işlemler gerçekleştirir ve bunu yeni bir listeye dönüştürür. Bu durumda, her bir öğeyi yineler ve yeni bir liste oluşturmak için onu 2 ile çarpar. Lütfen list () işlevinin çıktıyı bir liste türüne dönüştürdüğüne dikkat edin.

# Harita

seq =

sonuç = liste (harita (lambda var: var * 2, seq))

baskı (sonuç)

Filtre işlevi tıpkı bir harita gibi bir liste ve bir kuralı kabul eder, ancak her bir öğeyi Boolean filtre kuralıyla karşılaştırarak orijinal listenin bir alt kümesini döndürür.

# Filtre

seq =

sonuç = liste (filtre (lambda x: x > 2, seq))

baskı (sonuç)

Dört, Arange ve Linspace

Arange, belirli bir adım için aritmetik sapmaların bir listesini döndürür. Başlangıç, bitiş ve adım üç parametresi sırasıyla başlangıç değerini, bitiş değerini ve adım uzunluğunu temsil eder. Lütfen durma noktasının bir "kesme" değeri olduğunu ve bu nedenle dizi çıktısına dahil edilmeyeceğini unutmayın.

# np.arange (başlat, durdur, adım)

np.arange (3, 7, 2)

dizi()

Linspace ve Arrange çok benzer, ancak biraz farklı. Linspace, aralığı belirtilen sayıya eşit olarak böler. Dolayısıyla, aralık başlangıcı ve bitişi ve eşit bölme noktalarının sayısı num verildiğinde, linspace bir NumPy dizisi döndürür. Bu, özellikle verileri görselleştirmek ve çizim sırasında koordinat eksenlerini bildirmek için kullanışlıdır.

# np.linspace (başlat, durdur, sayı)

np.linspace (2.0, 3.0, num = 5)

dizi ()

5. Axis ne anlama geliyor?

Pandalarda, bir sütunu silerken veya bir NumPy matrisindeki değerleri toplarken Eksen ile karşılaşabilirsiniz. Bir sütunu (satırı) silme örneğini kullanıyoruz:

df.drop ('Sütun A', eksen = 1)

df.drop ('Satır A', eksen = 0)

Sütunları işlemek istiyorsanız, Eksen'i 1'e ayarlayın, satırları işlemek istiyorsanız, 0'a ayarlayın. Ama neden? Pandalar'daki şekli hatırlayın

df.shape

(Satır Sayısı, Sütun Sayısı)

Bir Pandas DataFrame'den şekil özelliğini çağırmak bir demet döndürür. İlk değer satır sayısını ve ikinci değer sütun sayısını temsil eder. Python'da indekslemek isterseniz, satır sayısı 0, sütun sayısı ise 1 olarak belirtilir, bu da eksen değerlerini nasıl açıkladığımıza çok benzer.

6. Concat, Birleştir ve Birleştir

SQL'e aşina iseniz, bu kavramlar sizin için daha kolay olabilir. Her durumda, bu işlevler esasen DataFrame'i belirli bir şekilde birleştirmenin yollarıdır. Hangisinin hangi zamanda kullanılmasının en iyi olduğunu izlemek zor olabilir, o yüzden gözden geçirelim.

Concat, kullanıcıların tablonun altına veya yanına bir veya daha fazla DataFrame eklemesine olanak tanır (ekseni nasıl tanımladığınıza bağlı olarak):

Birleştirme, birden çok DataFrame satırını belirtilen aynı birincil anahtarla (Anahtar) birleştirir:

Join, Merge gibi, iki DataFrame'i birleştirir. Ancak belirtilen bir birincil anahtara göre birleşmez, ancak aynı sütun adına veya satır adına göre birleşir:

Yedi, Pandalar Uygula

Uygula Pandas Serisi için tasarlanmıştır. Seriye aşina değilseniz, onu Numpy benzeri bir dizi olarak düşünebilirsiniz.

Uygula, belirtilen eksendeki her öğeye bir işlev uygular. Uygula'yı kullanarak, bir DataFrame sütununun (bir Seri olan) değerini döngü yapmadan biçimlendirebilir ve değiştirebilirsiniz, bu çok kullanışlıdır!

df = pd.DataFrame (* 3, sütunlar =)

df

A B

04 9

14 9

24 9

df.apply (np.sqrt)

A B

02.03.0

12.03.0

22.03.0

df.apply (np.sum, eksen = 0)

Bir 12

B 27

df.apply (np.sum, axis = 1)

013

113

213

Sekiz, Pivot Tablolar

Son olarak, Pivot Tablolar. Microsoft Excel'e aşinaysanız, pivot tabloları duymuş olabilirsiniz. Pandaların yerleşik pivot_table işlevi, verileri birkaç sütunda hızlı bir şekilde görüntülememize yardımcı olabilecek bir DataFrame biçiminde elektronik tablo tarzı bir pivot tablo oluşturur. İşte birkaç örnek: Verileri "Yönetici" ye göre çok akıllıca gruplara ayırın:

pd.pivot_table (df, dizin =)

Veya öznitelik değerlerini filtreleyebilirsiniz:

pd.pivot_table (df, dizin =, değerler =)

sonuç olarak

Umarım yukarıdaki bu açıklamalar Python'da bazı yararlı işlevleri ve kavramları keşfetmenizi sağlayacaktır.

Orijinal bağlantı:

https://towardsdatascience.com/python-for-data-science-8-concepts-you-may-have-forgotten-i-did-825966908393

Operatör: Ran Xiaoshan

En tuhaf kendi kalesine gol! Japonya'nın U20 takımı, takım arkadaşlarını hayattan şüphe ediyor, Çinli savunma oyuncusundan daha utanç verici
önceki
Yeni yıl parası yaşlılara veriliyor mu? yanlış! Yeni Yıl parasının kökenlerine ve yanlış anlaşılmalarına bakın
Sonraki
Sun Zhengyi'nin Pekin'e yaptığı sade ziyaretinin arkasında: Çin Anakarası yarı iletkenlere saldırıyor ve Tayvan pasif olarak işin içinde.
Özel | Bu makale, özellik mühendisliğini anlamanızı sağlar!
GIF-Zhang Yuning, 14 dakikada 1 atış ve 2 pas attı, seviyesi Olimpik takım arkadaşlarından daha yüksek!
Özel Çin-ABD ticaret savaşının arka planında, Google AI ile Baidu AI'nin belirlenmesi zor
Filipin asistanının bu hamlesini fark eden Çin Ulusal Olimpiyatları tarafından dördüncü gol atıldığında: Gerçekten çaresizdim.
Kuru ürünler New York Üniversitesi'nden Chen Xi: AlphaGo Zero teknoloji evriminin kaçınılmazlığı (PPT ile)
Günde 600 milyondan fazla görüntülemeye sahip "Yanxi Sarayı Stratejisi" aracılığıyla video sitesi düzenini izleyin (kod eklidir)
GIF-Çin Ulusal Olimpiyatları çılgınlık! 9 dakikada 3 gol, Filipinler bir anda havaya uçtu
Envanter 2018'de küresel yapay zeka alanında çığır açan ilk 10 teknoloji (raporla birlikte)
Disney ile tanışın! İki eski Çin Süper Ligi dış yardımları Tianjin'den Almanya'ya dostluk getirdi!
Tarihin kesişme noktasında bulunan "Evrenin Kralı" Goldman Sachs, tamamen makine otomasyonuna doğru ilerlemek zorundaydı
Sıfırdan bire | Yapay zekaya giriş için 14 temel kitap (PDF bağlantısı ile)
To Top