Pandas 1.0-ի մեզ բերածը

Pandas 1.0-ի մեզ բերածը

Երկարության 9-ին տեղի ունեցավ Pandas 1.0.0rc-ի հնարավորության թողարկումը: Նախորդ տարբերակը ՝ 0.25:

Առաջին հիմնական թողարկումը պարունակում է բազմաթիվ հետաքրքիր նորություն, այդ թվում՝ համաքանց ծագային ընդհանուր տվյալների համապատասխան ստանալ, ավելորդ ծածկման ձևաչափեր, նոր տվյալների տեսակներ և նույնիսկ նոր փաստաթղթավորման կայք:

Բոլոր փոփոխությունները կարող եք տեսնել այստեղ, հոդվածում մենք քիչ տեխնիկական դիտարկում կկատարենք ամենակարևորի վրա:

Այնպես որ, բիբլիոտեկը տեղադրելու համար կարող եք հաստատել սովորական ձևով pip, բայց քանի որ հոդվածի գրման պահի Pandas 1.0 դեռևս release candidate, պետք է հստակ նշել թողարկումը:

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

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-ի միջոցով using 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()

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 ցուցադրել նոր տեսակները— string և bool.

Նոր տողային տեսակի առավել օգտակար կարողությունները ընդգրկում են միայն տողային սյուները ընտրելու հնարավորությունը մոնիտորինգից: Սա կարող է զգալիորեն հեշտացնել տեքստային տվյալների վերլուծությունը:

df.select_dtypes("string")

Ավելի վաղ տողերի սյուները չէր կարելի ընտրել առանց անվանումները հստակ նշելու:

Նոր տիպերի մասին ավելին կարող եք կարդալ այստեղ.

Շնորհակալություն, որ ընթերցեցիք: Ամբողջ փոփոխությունների ցանկը, ինչպես արդեն նշվեց, կարող եք տեսնել այստեղ.

Ընտանիք: habr.com

Գնել հուսալի հյուրընկալում DDoS պաշտպանությամբ, VPS VDS սերվերներով 🔥 Գնել հուսալի հյուրընկալում DDoS պաշտպանությամբ, VPS VDS սերվերներով | ProHoster