Чӣ Pandas 1.0 ба мо овард

Чӣ Pandas 1.0 ба мо овард

9 январ Pandas 1.0.0rc бароварда шуд. Варианти пешинаи китобхона 0.25 аст.

Нахустин нашри асосӣ дорои бисёр хусусиятҳои нави олӣ, аз ҷумла ҷамъбасти такмилёфтаи чаҳорчӯбаи додаҳо, форматҳои бештари баромад, намудҳои нави маълумот ва ҳатто сайти нави ҳуҷҷатгузорӣ мебошад.

Ҳама тағиротҳоро дидан мумкин аст дар ин ҷо, дар мақола мо худамонро бо баррасии хурд, камтар техникии чизҳои муҳимтарин маҳдуд мекунем.

Шумо метавонед китобхонаро бо истифода аз маъмулӣ насб кунед Фишка, аммо аз замони навиштани Pandas 1.0 ҳанӯз ҳам ҳаст озод кардани номзад, шумо бояд версияро ба таври возеҳ нишон диҳед:

pip install --upgrade pandas==1.0.0rc0

Эҳтиёт бошед: азбаски ин версияи асосӣ аст, навсозӣ метавонад рамзи кӯҳнаро вайрон кунад!

Воқеан, дастгирии Python 2 аз замони ин версия комилан қатъ шудааст (чи сабаби хуб шуда метавонад навсозӣ — тахминан. тарҷума). Pandas 1.0 ҳадди аққал Python 3.6+ -ро талаб мекунад, бинобар ин, агар шумо боварӣ надошта бошед, кадомашро насб кардаед:

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

$ python --version
Python 3.7.5

Роҳи осонтарини тафтиши версияи Pandas ин аст:

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

Хулосаи худкори такмилёфта бо DataFrame.info

Навоварии дӯстдоштаи ман навсозии усул буд DataFrame.info. Функсия хеле хондантар шуд ва раванди ҷустуҷӯи маълумотро боз ҳам осонтар кард:

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

Баровардани ҷадвалҳо дар формати Markdown

Навоварии баробар гуворо ин қобилияти содироти фреймҳо ба ҷадвалҳои Markdown бо истифода аст DataFrame.to_markdown.

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

Ин нашр кардани ҷадвалҳоро дар сайтҳо ба монанди Medium бо истифода аз github gists осонтар мекунад.

Чӣ Pandas 1.0 ба мо овард

Навъҳои нав барои сатрҳо ва булиҳо

Нашри Pandas 1.0 инчунин нав илова кард таҷрибавӣ намудҳо. API-и онҳо то ҳол метавонад тағир ёбад, аз ин рӯ онро бо эҳтиёт истифода баред. Аммо дар маҷмӯъ, Pandas тавсия медиҳад, ки намудҳои навро дар ҳама ҷое, ки маъно дорад, истифода барад.

Дар айни замон, актёр бояд ба таври возеҳ анҷом дода шавад:

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

Аҳамият диҳед, ки чӣ тавр сутун Dtype навъҳои навро нишон медиҳад - данд и бурд.

Хусусияти муфидтарини навъи сатри нав ин қобилияти интихоб кардан аст танҳо сутунҳои сатр аз фреймҳои маълумот. Ин метавонад таҳлили маълумоти матниро хеле осон кунад:

df.select_dtypes("string")

Пештар, сутунҳои сатрро бидуни мушаххас кардани номҳо интихоб кардан мумкин набуд.

Шумо метавонед дар бораи навъҳои нав бештар хонед дар ин ҷо.

Ташаккур барои хондан! Рӯйхати пурраи тағиротро, тавре ки аллакай зикр шудааст, дидан мумкин аст дар ин ҷо.

Манбаъ: will.com

Илова Эзоҳ