Dana 9. siječnja objavljena je Pandas 1.0.0rc. Prethodna verzija biblioteke je 0.25.
Prvo veliko izdanje sadrži mnogo izvrsnih novih značajki, uključujući poboljšano automatsko sažimanje okvira podataka, više izlaznih formata, nove tipove podataka, pa čak i novo mjesto za dokumentaciju.
Sve promjene se mogu vidjeti
Možete instalirati biblioteku kao i obično pomoću zvjezdica, ali budući da je u vrijeme pisanja Pandas 1.0 još uvijek Release Candidate, morat ćete izričito navesti verziju:
pip install --upgrade pandas==1.0.0rc0
Budite oprezni: budući da je ovo veliko izdanje, ažuriranje može pokvariti stari kod!
Usput, podrška za Python 2 je u potpunosti ukinuta od ove verzije (što bi mogao biti dobar razlog
$ pip --version
pip 19.3.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)
$ python --version
Python 3.7.5
Najlakši način da provjerite Pandas verziju je ovaj:
>>> import pandas as pd
>>> pd.__version__
1.0.0rc0
Poboljšano automatsko sažimanje s DataFrame.info
Moja omiljena inovacija bilo je ažuriranje metode DataFrame.info. Funkcija je postala puno čitljivija, čineći proces istraživanja podataka još lakšim:
>>> 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
Izlaz tablica u Markdown formatu
Jednako ugodna inovacija je mogućnost izvoza podatkovnih okvira u Markdown tablice pomoću DataFrame.to_markdown.
>>> df.to_markdown()
| | A | B | C |
|---:|----:|:--------|:------|
| 0 | 1 | goodbye | False |
| 1 | 2 | cruel | True |
| 2 | 3 | world | False |
To znatno olakšava objavljivanje tablica na stranicama kao što je Medium koristeći github gists.
Novi tipovi za nizove i booleove
Izdanje Pandas 1.0 također je dodalo novo eksperimentalni vrste. Njihov se API još uvijek može promijeniti, stoga ga koristite s oprezom. Ali općenito, Pandas preporučuje korištenje novih vrsta gdje god to ima smisla.
Za sada se glumačka postava mora izvršiti eksplicitno:
>>> 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
Primijetite kako stupac Dvrsta prikazuje nove vrste − niz и bool.
Najkorisnija značajka nove vrste niza je mogućnost odabira samo redovi stupaca iz podatkovnih okvira. Ovo može znatno olakšati raščlanjivanje tekstualnih podataka:
df.select_dtypes("string")
Prije se stupci retka nisu mogli odabrati bez izričitog navođenja naziva.
Možete pročitati više o novim vrstama
Hvala na čitanju! Potpuni popis promjena, kao što je već spomenuto, može se pogledati
Izvor: www.habr.com