Apa yang membawa kami Pandas 1.0

Apa yang membawa kami Pandas 1.0

Pada 9 Januari, Pandas 1.0.0rc telah dikeluarkan. Versi perpustakaan sebelumnya ialah 0.25.

Keluaran utama pertama mengandungi banyak ciri baharu yang hebat, termasuk ringkasan bingkai data automatik yang dipertingkatkan, lebih banyak format output, jenis data baharu dan juga tapak dokumentasi baharu.

Semua perubahan boleh dilihat di sini, dalam artikel itu kami akan mengehadkan diri kami kepada semakan kecil yang kurang teknikal tentang perkara yang paling penting.

Anda boleh memasang perpustakaan seperti biasa menggunakan pip, tetapi sejak pada masa menulis Pandas 1.0 masih calon pelepasan, anda perlu menyatakan versi secara eksplisit:

pip install --upgrade pandas==1.0.0rc0

Berhati-hati: memandangkan ini adalah keluaran utama, kemas kini mungkin memecahkan kod lama!

Dengan cara ini, sokongan untuk Python 2 telah dihentikan sepenuhnya sejak versi ini (apa yang boleh menjadi alasan yang baik kemas kini - lebih kurang terjemahan). Pandas 1.0 memerlukan sekurang-kurangnya Python 3.6+, jadi jika anda tidak pasti, semak mana yang telah anda pasang:

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

$ python --version
Python 3.7.5

Cara paling mudah untuk menyemak versi Pandas ialah ini:

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

Auto-ringkasan yang lebih baik dengan DataFrame.info

Inovasi kegemaran saya adalah kemas kini kepada kaedah DataFrame.info. Fungsi ini menjadi lebih mudah dibaca, menjadikan proses penerokaan data lebih mudah:

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

Mengeluarkan jadual dalam format Markdown

Inovasi yang sama menyenangkan ialah keupayaan untuk mengeksport bingkai data ke jadual Markdown menggunakan DataFrame.to_markdown.

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

Ini menjadikannya lebih mudah untuk menerbitkan jadual di tapak seperti Medium menggunakan github github.

Apa yang membawa kami Pandas 1.0

Jenis baharu untuk rentetan dan boolean

Keluaran Pandas 1.0 juga menambah baharu percubaan jenis. API mereka mungkin masih berubah, jadi gunakannya dengan berhati-hati. Tetapi secara umum, Pandas mengesyorkan menggunakan jenis baharu di mana-mana sahaja ia masuk akal.

Buat masa ini, pelakon perlu dilakukan secara eksplisit:

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

Perhatikan bagaimana lajur Dtype memaparkan jenis baharu βˆ’ rentetan ΠΈ bool.

Ciri yang paling berguna bagi jenis rentetan baharu ialah kebolehpilihan hanya lajur baris daripada bingkai data. Ini boleh menjadikan penghuraian data teks lebih mudah:

df.select_dtypes("string")

Sebelum ini, lajur baris tidak boleh dipilih tanpa menyatakan nama secara eksplisit.

Anda boleh membaca lebih lanjut tentang jenis baharu di sini.

Terima kasih kerana membaca! Senarai penuh perubahan, seperti yang telah disebutkan, boleh dilihat di sini.

Sumber: www.habr.com

Tambah komen