Xoay vòng trong Python

df = pd. Khung dữ liệu [{'foo'. ['một', 'một', 'một', 'hai', 'hai','hai'],

'quán ba'. ['A', 'B', 'C', 'A', 'B', 'C'],

'baz'. [1, 2, 3, 4, 5, 6],

'vườn bách thú'. ['x', 'y', 'z', 'q', 'w', 't']}]

print["Khung dữ liệu gốc"]

in [df. trục [chỉ mục = 'foo', cột = 'thanh', giá trị = 'baz']]

Thư viện pandas là gói Python phổ biến để phân tích dữ liệu. Khi lần đầu làm việc với tập dữ liệu trong pandas, cấu trúc sẽ là hai chiều, bao gồm các hàng và cột, còn được gọi là DataFrame. Một phần quan trọng của phân tích dữ liệu là quá trình nhóm, tóm tắt, tổng hợp và tính toán số liệu thống kê về dữ liệu này. Các bảng tổng hợp của Pandas cung cấp một công cụ mạnh mẽ để thực hiện các kỹ thuật phân tích này với Python

Tạo Bảng Pivot Pandas của riêng bạn trong 4 bước

  1. Tải xuống hoặc nhập dữ liệu mà bạn muốn sử dụng
  2. Trong hàm pivot_table, hãy chỉ định Khung dữ liệu bạn đang tóm tắt, cùng với tên cho các chỉ mục, cột và giá trị
  3. Chỉ định loại tính toán bạn muốn sử dụng, chẳng hạn như giá trị trung bình.  
  4. Sử dụng nhiều chỉ mục và nhóm cấp độ cột để tạo bản tóm tắt dữ liệu mạnh mẽ hơn.  

Nếu bạn là người dùng bảng tính thì có thể bạn đã quen thuộc với khái niệm bảng tổng hợp. Các bảng tổng hợp của gấu trúc hoạt động theo cách rất giống với các bảng được tìm thấy trong các công cụ bảng tính như Microsoft Excel. Hàm bảng tổng hợp lấy khung dữ liệu và các tham số mô tả chi tiết hình dạng bạn muốn dữ liệu lấy. Sau đó, nó xuất dữ liệu tóm tắt dưới dạng bảng tổng hợp

Tôi sẽ giới thiệu ngắn gọn với các ví dụ về mã cho công cụ bảng tổng hợp pandas. Sau đó, tôi sẽ sử dụng tập dữ liệu có tên là “ô tô”, tập hợp này chứa nhiều đặc điểm về ô tô, chẳng hạn như kiểu dáng, giá cả, mã lực và dặm trên mỗi gallon.

Bạn có thể tải xuống dữ liệu từ OpenML hoặc mã có thể được nhập trực tiếp vào mã của bạn bằng API scikit-learning như minh họa bên dưới.

import pandas as pd
import numpy as np
from sklearn.datasets import fetch_openml

X,y = fetch_openml["autos", version=1, as_frame=True, return_X_y=True]
data = X
data['target'] = y

 

Cách tạo Bảng Pivot Pandas

Bảng tổng hợp gấu trúc có ba yếu tố chính

  • Mục lục. Điều này chỉ định nhóm cấp hàng
  • Cột. Điều này chỉ định nhóm cấp độ cột.  
  • giá trị. Đây là những giá trị số bạn đang tìm kiếm để tóm tắt
Giải phẫu cơ bản của bảng trụ gấu trúc. . Hình ảnh. Rebecca Vickery

Mã được sử dụng để tạo bảng tổng hợp có thể được nhìn thấy bên dưới. Trong hàm ______11 , chúng tôi chỉ định Khung dữ liệu mà chúng tôi đang tóm tắt, sau đó là tên cột cho các giá trị, chỉ mục và cột. Ngoài ra, chúng tôi chỉ định loại tính toán mà chúng tôi muốn sử dụng. Trong trường hợp này, chúng tôi đang tính toán giá trị trung bình.

pivot = np.round[pd.pivot_table[data, values='price', 
                                index='num-of-doors', 
                                columns='fuel-type', 
                                aggfunc=np.mean],2]
pivot

Bảng Pivot có thể đa cấp. Chúng tôi có thể sử dụng nhiều chỉ mục và nhóm cấp độ cột để tạo các bản tóm tắt mạnh mẽ hơn về tập dữ liệu

pivot = np.round[pd.pivot_table[data, values='price', 
                                index=['num-of-doors', 'body-style'], 
                                columns=['fuel-type', 'fuel-system'], 
                                aggfunc=np.mean,
                                fill_value=0],2]
pivot
Giải phẫu cơ bản của bảng tổng hợp gấu trúc đa cấp. . Hình ảnh. Rebecca Vickery

Thông tin thêm về Pandas Sắp xếp khung dữ liệu trong Pandas. Hướng dẫn thực hành

 

Cách vẽ đồ thị với Pandas Pivot Table

Các bảng tổng hợp của gấu trúc có thể được sử dụng cùng với chức năng vẽ biểu đồ của gấu trúc để tạo trực quan hóa dữ liệu hữu ích

Chỉ cần thêm

pivot = np.round[pd.pivot_table[data, values='price', 
                                index='num-of-doors', 
                                columns='fuel-type', 
                                aggfunc=np.mean],2]
pivot
2 vào cuối mã bảng tổng hợp của bạn sẽ tạo ra một biểu đồ dữ liệu. Ví dụ: đoạn mã dưới đây tạo biểu đồ thanh hiển thị giá ô tô trung bình theo nhãn hiệu và số lượng cửa.

np.round[pd.pivot_table[data, values='price', 
                                index=['make'], 
                                columns=['num-of-doors'], 
                                aggfunc=np.mean,
                                fill_value=0],2].plot.barh[figsize=[10,7],
                                                          title='Mean car price by make and number of doors']
Lô đồ được tạo bằng cách sử dụng bảng tổng hợp gấu trúc phân tích giá ô tô trung bình theo nhãn hiệu và số lượng cửa. . Hình ảnh. Rebecca Vickery 

 

Cách tính toán với Pandas Pivot Table

Đối số

pivot = np.round[pd.pivot_table[data, values='price', 
                                index='num-of-doors', 
                                columns='fuel-type', 
                                aggfunc=np.mean],2]
pivot
0 trong hàm bảng tổng hợp có thể thực hiện một hoặc nhiều phép tính tiêu chuẩn.

Đoạn mã sau tính giá trung bình và giá trung bình cho kiểu dáng thân xe và số lượng cửa

np.round[pd.pivot_table[data, values='price', 
                                index=['body-style'], 
                                columns=['num-of-doors'], 
                                aggfunc=[np.mean, np.median],
                                fill_value=0],2]
Tổng hợp bảng tổng hợp. . Hình ảnh. Rebecca Vickery

Bạn có thể thêm đối số

pivot = np.round[pd.pivot_table[data, values='price', 
                                index='num-of-doors', 
                                columns='fuel-type', 
                                aggfunc=np.mean],2]
pivot
1 để thêm tổng vào cột và hàng. Bạn cũng có thể chỉ định tên cho tổng số bằng cách sử dụng
pivot = np.round[pd.pivot_table[data, values='price', 
                                index='num-of-doors', 
                                columns='fuel-type', 
                                aggfunc=np.mean],2]
pivot
2 .

np.round[pd.pivot_table[data, values='price', 
                                index=['body-style'], 
                                columns=['num-of-doors'], 
                                aggfunc=[np.sum],
                                fill_value=0,
                                margins=True, margins_name='Total'],2]
Biểu đồ hiển thị tổng số được thêm bằng cách sử dụng bảng tổng hợp gấu trúc. . Hình ảnh. Rebecca Vickery

Một hướng dẫn về những điều cơ bản của pandas pivot table. . Băng hình. cơ sở mã

 

Cách tạo kiểu cho Pandas Pivot Table của bạn

Khi tóm tắt dữ liệu, kiểu dáng rất quan trọng. Chúng tôi muốn đảm bảo rằng các mẫu và thông tin chi tiết mà bảng tổng hợp cung cấp phải dễ đọc và dễ hiểu. Trong các bảng tổng hợp được sử dụng trong các phần trước của bài viết, rất ít kiểu dáng đã được áp dụng. Kết quả là các bảng không dễ hiểu hoặc không hấp dẫn về mặt hình ảnh

Chúng ta có thể sử dụng một phương thức Pandas khác, được gọi là phương thức kiểu để làm cho các bảng trông đẹp hơn và dễ dàng rút ra thông tin chi tiết hơn từ. Mã bên dưới thêm định dạng và đơn vị đo lường phù hợp cho từng giá trị được sử dụng trong bảng tổng hợp này. Giờ đây, việc phân biệt giữa hai cột và hiểu những gì dữ liệu đang cho bạn biết trở nên dễ dàng hơn nhiều

pivot = np.round[pd.pivot_table[data, values=['price', 'horsepower'], 
                                index=['make'], 
                                aggfunc=np.mean,
                                fill_value=0],2]

pivot.style.format[{'price':'${0:,.0f}',
                   'horsepower':'{0:,.0f}hp'}]
Thêm kiểu dáng cho bảng tổng hợp. . Hình ảnh. Rebecca Vickery

Chúng tôi có thể kết hợp các định dạng khác nhau bằng cách sử dụng trình tạo kiểu và sử dụng các kiểu tích hợp sẵn của gấu trúc để tóm tắt dữ liệu theo cách giúp rút ra thông tin chuyên sâu ngay lập tức. Trong mã và bảng tổng hợp được hiển thị bên dưới, chúng tôi đã sắp xếp thứ tự kiểu dáng của ô tô theo giá từ cao đến thấp, thêm định dạng phù hợp cho các số và thêm biểu đồ thanh chồng lên các giá trị trong cả hai cột. Điều này giúp bạn dễ dàng đưa ra kết luận từ bảng hơn, chẳng hạn như hãng xe nào đắt nhất và mã lực liên quan như thế nào đến giá của mỗi hãng xe.

pivot = np.round[pd.pivot_table[data, values='price', 
                                index='num-of-doors', 
                                columns='fuel-type', 
                                aggfunc=np.mean],2]
pivot
0
Sử dụng các kiểu dựng sẵn trong gấu trúc để dễ dàng rút ra thông tin chi tiết từ dữ liệu. . Hình ảnh. Rebecca Vickery

Thông tin thêm về Pandas Hướng dẫn dành cho người mới bắt đầu sử dụng Pandas để sắp xếp dữ liệu văn bản với Python

 

Ưu điểm của Pandas Pivot Table

Bảng tổng hợp đã được sử dụng từ đầu những năm 90 với việc Microsoft cấp bằng sáng chế cho phiên bản Excel nổi tiếng được gọi là “PivotTable” vào năm 1994. Ngày nay chúng vẫn được sử dụng rộng rãi vì chúng là một công cụ mạnh mẽ để phân tích dữ liệu. Bảng tổng hợp Pandas đưa công cụ này ra khỏi bảng tính và đến tay người dùng Python

Hướng dẫn này đã giới thiệu ngắn gọn về cách sử dụng công cụ bảng tổng hợp trong Pandas. Nó nhằm cung cấp cho người mới bắt đầu một hướng dẫn nhanh để thiết lập và chạy với công cụ nhưng tôi khuyên bạn nên tìm hiểu sâu về

Chúng ta có thể tạo trục trong Python không?

Các bước để tạo Pivot Table trong Python bằng Pandas. Trước tiên, bạn cần thu thập dữ liệu bằng Python . Khi bạn đã sẵn sàng DataFrame, bạn sẽ có thể xoay vòng dữ liệu của mình.

Làm cách nào để xoay vòng bằng gấu trúc?

Tạo bảng tổng hợp kiểu bảng tính dưới dạng DataFrame . Các mức trong bảng tổng hợp sẽ được lưu trữ trong các đối tượng MultiIndex [chỉ mục phân cấp] trên chỉ mục và cột của DataFrame kết quả. Nếu một mảng được truyền, nó phải có cùng độ dài với dữ liệu.

Chủ Đề