Çfarë na solli Pandas 1.0

Çfarë na solli Pandas 1.0

Më 9 janar, Pandas 1.0.0rc u lëshua. Versioni i mëparshëm i bibliotekës është 0.25.

Publikimi i parë kryesor përmban shumë veçori të reja të shkëlqyera, duke përfshirë përmirësimin e përmbledhjes automatike të kornizës së të dhënave, më shumë formate dalëse, lloje të reja të dhënash dhe madje edhe një faqe të re dokumentacioni.

Të gjitha ndryshimet mund të shihen këtu, në artikull do të kufizohemi në një rishikim të vogël e më pak teknik të gjërave më të rëndësishme.

Ju mund ta instaloni bibliotekën si zakonisht duke përdorur cicërin, por që në kohën e shkrimit Pandas 1.0 është ende kandidatin e lirimit, do t'ju duhet të specifikoni në mënyrë eksplicite versionin:

pip install --upgrade pandas==1.0.0rc0

Kini kujdes: meqenëse ky është një version i madh, përditësimi mund të thyejë kodin e vjetër!

Nga rruga, mbështetja për Python 2 është ndërprerë plotësisht që nga ky version (cila mund të jetë një arsye e mirë përditësimi - përafërsisht. përkthimi). Pandas 1.0 kërkon të paktën Python 3.6+, kështu që nëse nuk jeni të sigurt, kontrolloni cilin keni instaluar:

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

$ python --version
Python 3.7.5

Mënyra më e lehtë për të kontrolluar versionin e Pandas është kjo:

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

Përmbledhje automatike e përmirësuar me DataFrame.info

Risia ime e preferuar ishte përditësimi i metodës DataFrame.info. Funksioni është bërë shumë më i lexueshëm, duke e bërë edhe më të lehtë procesin e kërkimit të të dhënave:

>>> 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

Dalja e tabelave në formatin Markdown

Një risi po aq e këndshme është aftësia për të eksportuar kornizat e të dhënave në tabelat Markdown duke përdorur DataFrame.to_markdown.

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

Kjo e bën shumë më të lehtë publikimin e tabelave në sajte si Medium duke përdorur thelbin e github.

Çfarë na solli Pandas 1.0

Lloje të reja për vargje dhe booleans

Lëshimi i Pandas 1.0 gjithashtu shtoi të reja eksperimentale llojet. API-ja e tyre mund të ndryshojë ende, prandaj përdorni me kujdes. Por në përgjithësi, Pandas rekomandon përdorimin e llojeve të reja kudo që ka kuptim.

Tani për tani, kasti duhet të bëhet në mënyrë eksplicite:

>>> 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

Vini re se si kolona Lloji D shfaq lloje të reja − varg и bool.

Karakteristika më e dobishme e llojit të ri të vargut është aftësia për të zgjedhur vetëm kolonat e rreshtave nga kornizat e të dhënave. Kjo mund ta bëjë analizimin e të dhënave të tekstit shumë më të lehtë:

df.select_dtypes("string")

Më parë, kolonat e rreshtave nuk mund të zgjidheshin pa specifikuar në mënyrë eksplicite emrat.

Mund të lexoni më shumë rreth llojeve të reja këtu.

Faleminderit që lexuat! Lista e plotë e ndryshimeve, siç është përmendur tashmë, mund të shihet këtu.

Burimi: www.habr.com

Shto një koment