Pandas 1.0 bizga nima olib keldi

Pandas 1.0 bizga nima olib keldi

9 yanvar kuni Pandas 1.0.0rc chiqarildi. Kutubxonaning oldingi versiyasi 0.25.

Birinchi yirik nashr ko'plab ajoyib yangi xususiyatlarni o'z ichiga oladi, jumladan, takomillashtirilgan avtomatik ma'lumotlar ramkasini umumlashtirish, ko'proq chiqish formatlari, yangi ma'lumotlar turlari va hatto yangi hujjat sayti.

Barcha o'zgarishlarni ko'rish mumkin shu yerda, maqolada biz eng muhim narsalarni kichik, kamroq texnik ko'rib chiqish bilan cheklanamiz.

Siz kutubxonani odatdagidek o'rnatishingiz mumkin pip, lekin yozilayotgan paytdan beri Pandas 1.0 hali ham nomzodni ozod qilish, siz versiyani aniq ko'rsatishingiz kerak bo'ladi:

pip install --upgrade pandas==1.0.0rc0

Ehtiyot bo'ling: bu katta versiya bo'lgani uchun yangilanish eski kodni buzishi mumkin!

Aytgancha, ushbu versiyadan beri Python 2-ni qo'llab-quvvatlash butunlay to'xtatilgan (yaxshi sabab nima bo'lishi mumkin yangilash - taxminan. tarjima). Pandas 1.0 kamida Python 3.6+ talab qiladi, shuning uchun ishonchingiz komil bo'lmasa, qaysi birini o'rnatganingizni tekshiring:

$ 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 versiyasini tekshirishning eng oson yo'li bu:

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

DataFrame.info bilan yaxshilangan avtomatik xulosa

Mening sevimli yangiligim usulni yangilash edi DataFrame.info. Funktsiya ancha o'qilishi mumkin bo'lib, ma'lumotlarni o'rganish jarayonini yanada osonlashtirdi:

>>> 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 formatida jadvallarni chiqarish

Xuddi shunday yoqimli yangilik bu ma'lumotlar ramkalarini Markdown jadvallariga eksport qilish qobiliyatidir DataFrame.to_markdown.

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

Bu github gists yordamida Medium kabi saytlarda jadvallarni nashr qilishni ancha osonlashtiradi.

Pandas 1.0 bizga nima olib keldi

Satrlar va mantiqiylar uchun yangi turlar

Pandas 1.0 versiyasi ham yangi qo'shildi eksperimental turlari. Ularning API hali ham o'zgarishi mumkin, shuning uchun uni ehtiyotkorlik bilan ishlating. Ammo, umuman olganda, Pandas mantiqiy bo'lgan joyda yangi turlardan foydalanishni tavsiya qiladi.

Hozircha, aktyorlik ishlari aniq bajarilishi kerak:

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

Qanday ustunga e'tibor bering D turi yangi turlarini ko'rsatadi - string ΠΈ bool.

Yangi string turining eng foydali xususiyati tanlash imkoniyatidir faqat qator ustunlari dataframelardan. Bu matn ma'lumotlarini tahlil qilishni ancha osonlashtirishi mumkin:

df.select_dtypes("string")

Ilgari, satr ustunlarini nomlarni aniq ko'rsatmasdan tanlash mumkin emas edi.

Yangi turlar haqida ko'proq o'qishingiz mumkin shu yerda.

O'qiganingiz uchun tashakkur! O'zgarishlarning to'liq ro'yxati, yuqorida aytib o'tilganidek, ko'rish mumkin shu yerda.

Manba: www.habr.com

a Izoh qo'shish