สิ่งที่ Pandas 1.0 นำมาให้เรา

สิ่งที่ Pandas 1.0 นำมาให้เรา

เมื่อวันที่ 9 มกราคม Pandas 1.0.0rc ได้รับการเผยแพร่ เวอร์ชันก่อนหน้าของไลบรารีคือ 0.25

รุ่นหลักรุ่นแรกมีคุณสมบัติใหม่ที่ยอดเยี่ยมมากมาย รวมถึงการสรุป dataframe อัตโนมัติที่ได้รับการปรับปรุง รูปแบบเอาต์พุตที่มากขึ้น ประเภทข้อมูลใหม่ และแม้แต่ไซต์เอกสารประกอบใหม่

สามารถดูการเปลี่ยนแปลงทั้งหมดได้ ที่นี่ในบทความนี้เราจะจำกัดตัวเองอยู่เพียงการทบทวนสิ่งที่สำคัญที่สุดทางเทคนิคเพียงเล็กน้อยเท่านั้น

คุณสามารถติดตั้งไลบรารีได้ตามปกติโดยใช้ จุดเล็ก ๆแต่เนื่องจากตอนที่เขียน 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

สังเกตว่าคอลัมน์เป็นอย่างไร Dประเภท แสดงประเภทใหม่ - เชือก и บูล.

คุณสมบัติที่มีประโยชน์ที่สุดของประเภทสตริงใหม่คือความสามารถในการเลือก เฉพาะคอลัมน์แถวเท่านั้น จากดาต้าเฟรม ซึ่งจะทำให้การแยกวิเคราะห์ข้อมูลข้อความง่ายขึ้นมาก:

df.select_dtypes("string")

ก่อนหน้านี้ ไม่สามารถเลือกคอลัมน์แถวโดยไม่ระบุชื่ออย่างชัดเจน

คุณสามารถอ่านเพิ่มเติมเกี่ยวกับประเภทใหม่ได้ ที่นี่.

ขอบคุณสำหรับการอ่าน! สามารถดูรายการการเปลี่ยนแปลงทั้งหมดดังที่กล่าวไปแล้วได้ ที่นี่.

ที่มา: will.com

เพิ่มความคิดเห็น