Pandas 1.0'ın bize getirdiği şey

Pandas 1.0'ın bize getirdiği şey

9 Ocak'ta Pandas 1.0.0rc yayınlandı. Kütüphanenin önceki sürümü 0.25'tir.

İlk büyük sürüm, gelişmiş otomatik veri çerçevesi özetleme, daha fazla çıktı formatı, yeni veri türleri ve hatta yeni bir dokümantasyon sitesi dahil olmak üzere pek çok harika yeni özellik içeriyor.

Tüm değişiklikler görüntülenebilir buradaMakalede kendimizi en önemli şeylerin küçük, daha az teknik bir incelemesiyle sınırlayacağız.

Kütüphaneyi her zamanki gibi kullanarak yükleyebilirsiniz. bip, ancak Pandas 1.0'ın yazıldığı dönemden beri hala sürüm adayısürümünü açıkça belirtmeniz gerekir:

pip install --upgrade pandas==1.0.0rc0

Dikkatli olun: Bu büyük bir sürüm olduğundan güncelleme eski kodu bozabilir!

Bu arada Python 2 desteği bu sürümden itibaren tamamen durduruldu (iyi bir sebep ne olabilir Güncelleme - yaklaşık. tercüme). Pandas 1.0 en az Python 3.6+ gerektirir; bu nedenle emin değilseniz hangisini yüklediğinizi kontrol edin:

$ pip --version
pip 19.3.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

$ python --version
Python 3.7.5

Pandalar sürümünü kontrol etmenin en kolay yolu şudur:

>>> import pandas as pd
>>> pd.__version__
1.0.0rc0

DataFrame.info ile geliştirilmiş otomatik özetleme

En sevdiğim yenilik yöntemin güncellenmesiydi DataFrame.info. İşlev çok daha okunabilir hale geldi ve veri araştırma sürecini daha da kolaylaştırdı:

>>> df = pd.DataFrame({
...:   'A': [1,2,3], 
...:   'B': ["goodbye", "cruel", "world"], 
...:   'C': [False, True, False]
...:})
>>> df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 3 columns):
 #   Column  Non-Null Count  Dtype
---  ------  --------------  -----
 0   A       3 non-null      int64
 1   B       3 non-null      object
 2   C       3 non-null      object
dtypes: int64(1), object(2)
memory usage: 200.0+ bytes

Tabloların Markdown formatında çıktısı alınması

Aynı derecede hoş bir yenilik de veri çerçevelerini Markdown tablolarına aktarma yeteneğidir. DataFrame.to_markdown.

>>> df.to_markdown()
|    |   A | B       | C     |
|---:|----:|:--------|:------|
|  0 |   1 | goodbye | False |
|  1 |   2 | cruel   | True  |
|  2 |   3 | world   | False |

Bu, github özetlerini kullanarak Medium gibi sitelerde tablo yayınlamayı çok daha kolay hale getirir.

Pandas 1.0'ın bize getirdiği şey

Dizeler ve boolean'lar için yeni türler

Pandalar 1.0 sürümüne ayrıca yeni özellikler eklendi deneysel türleri. API'leri yine de değişebilir, bu nedenle dikkatli kullanın. Ancak genel olarak Pandas, mantıklı olan her yerde yeni türlerin kullanılmasını önerir.

Şimdilik, oyuncu seçiminin açıkça yapılması gerekiyor:

>>> B = pd.Series(["goodbye", "cruel", "world"], dtype="string")
>>> C = pd.Series([False, True, False], dtype="bool")
>>> df.B = B, df.C = C
>>> df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 3 columns):
 #   Column  Non-Null Count  Dtype
---  ------  --------------  -----
 0   A       3 non-null      int64
 1   B       3 non-null      string
 2   C       3 non-null      bool
dtypes: int64(1), object(1), string(1)
memory usage: 200.0+ bytes

Sütunun nasıl olduğuna dikkat edin Dtipi yeni türleri görüntüler – dizi и bool.

Yeni dize türünün en kullanışlı özelliği, seçme yeteneğidir. yalnızca satır sütunları veri çerçevelerinden. Bu, metin verilerinin ayrıştırılmasını çok daha kolay hale getirebilir:

df.select_dtypes("string")

Daha önce satır sütunları, adları açıkça belirtilmeden seçilmiyordu.

Yeni türler hakkında daha fazlasını okuyabilirsiniz burada.

Okuduğunuz için teşekkürler! Daha önce de belirtildiği gibi değişikliklerin tam listesi görüntülenebilir burada.

Kaynak: habr.com

Yorum ekle