Ko mums atnesa Pandas 1.0

Ko mums atnesa Pandas 1.0

9. janvārī tika izlaista Pandas 1.0.0rc. Iepriekšējā bibliotēkas versija ir 0.25.

Pirmajā lielajā laidienā ir iekļautas daudzas lieliskas jaunas funkcijas, tostarp uzlabota automātiskā datu rāmja apkopošana, vairāk izvades formātu, jauni datu veidi un pat jauna dokumentācijas vietne.

Visas izmaiņas var apskatīt šeit, rakstā aprobežosimies ar nelielu, mazāk tehnisku svarīgāko lietu apskatu.

Varat instalēt bibliotēku kā parasti, izmantojot pip, bet tā kā rakstīšanas laikā Pandas 1.0 joprojām ir atbrīvot kandidāts, jums būs skaidri jānorāda versija:

pip install --upgrade pandas==1.0.0rc0

Esiet piesardzīgs: tā kā šī ir liela versija, atjauninājums var sabojāt veco kodu!

Starp citu, Python 2 atbalsts ir pilnībā pārtraukts kopš šīs versijas (kāds varētu būt labs iemesls Atjaunināt — apm. tulkojums). Pandas 1.0 nepieciešama vismaz Python 3.6+, tādēļ, ja neesat pārliecināts, pārbaudiet, kuru no tām esat instalējis:

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

$ python --version
Python 3.7.5

Vienkāršākais veids, kā pārbaudīt Pandas versiju, ir šāds:

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

Uzlabota automātiskā apkopošana ar DataFrame.info

Mans iecienītākais jauninājums bija metodes atjaunināšana DataFrame.info. Funkcija ir kļuvusi daudz lasāmāka, padarot datu izpētes procesu vēl vienkāršāku:

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

Tabulu izvadīšana Markdown formātā

Tikpat patīkams jauninājums ir iespēja eksportēt datu kadrus uz Markdown tabulām, izmantojot DataFrame.to_markdown.

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

Tas ievērojami atvieglo tabulu publicēšanu tādās vietnēs kā Medium, izmantojot github būtības.

Ko mums atnesa Pandas 1.0

Jauni stīgu un Būla veidi

Pandas 1.0 laidiens arī pievienoja jaunu eksperimentāls veidi. Viņu API joprojām var mainīties, tāpēc izmantojiet to piesardzīgi. Bet kopumā Pandas iesaka izmantot jaunus veidus visur, kur tas ir jēgas.

Pagaidām aktieru atlase ir jāveic skaidri:

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

Ievērojiet, kā kolonna Dtips parāda jaunus tipus − rinda и bols.

Jaunā virknes veida visnoderīgākā funkcija ir iespēja atlasīt tikai rindu kolonnas no datu rāmjiem. Tas var ievērojami atvieglot teksta datu parsēšanu:

df.select_dtypes("string")

Iepriekš rindu kolonnas nevarēja atlasīt, skaidri nenorādot nosaukumus.

Jūs varat lasīt vairāk par jaunajiem veidiem šeit.

Paldies par lasīšanu! Pilnu izmaiņu sarakstu, kā jau minēts, var apskatīties šeit.

Avots: www.habr.com

Pievieno komentāru