Hướng dẫn python pandas tutorial with examples - hướng dẫn pandas python với các ví dụ

[+:

Pandas là một thư viện Python.

Gandas được sử dụng để phân tích dữ liệu.

Học bằng cách đọc

Chúng tôi đã tạo 14 trang hướng dẫn để bạn tìm hiểu thêm về gấu trúc.

Bắt đầu với phần giới thiệu cơ bản và kết thúc bằng dữ liệu làm sạch và vẽ đồ thị:


Học bằng bài kiểm tra bài kiểm tra

Kiểm tra kỹ năng gấu trúc của bạn bằng một bài kiểm tra đố.

Bắt đầu bài kiểm tra gấu trúc


Học bằng các bài tập

Bài tập gấu trúc


Học theo ví dụ

Trong trình soạn thảo "Hãy thử chính nó" của chúng tôi, bạn có thể sử dụng mô -đun Pandas và sửa đổi mã để xem kết quả.

Thí dụ

Tải tệp CSV vào gấu trúc DataFrame:

nhập khẩu gấu trúc dưới dạng PD

df = pd.read_csv ('data.csv')

print(df.to_string())

Hãy tự mình thử »

Nhấp vào nút "Hãy tự mình thử" để xem nó hoạt động như thế nào.




Hướng dẫn python pandas tutorial with examples - hướng dẫn pandas python với các ví dụ

Tìm hiểu một số tính năng gấu trúc quan trọng nhất để khám phá, làm sạch, biến đổi, trực quan hóa và học hỏi từ dữ liệu.

Hướng dẫn python pandas tutorial with examples - hướng dẫn pandas python với các ví dụ

Bạn nên biết:

  • Nguyên tắc cơ bản của Python - Tìm hiểu tương tác trên DataQuest.io

Gói Pandas là công cụ quan trọng nhất trong việc xử lý các nhà khoa học và phân tích dữ liệu làm việc tại Python ngày nay. Các công cụ học máy mạnh mẽ và trực quan quyến rũ có thể nhận được tất cả sự chú ý, nhưng gấu trúc là xương sống của hầu hết các dự án dữ liệu.

[Pandas] có nguồn gốc từ thuật ngữ "dữ liệu bảng", một thuật ngữ kinh tế lượng cho các tập dữ liệu bao gồm các quan sát trong nhiều khoảng thời gian cho cùng một cá nhân. - Wikipedia

Nếu bạn đang nghĩ về khoa học dữ liệu như một nghề nghiệp, thì điều bắt buộc là một trong những điều đầu tiên bạn làm là học gấu trúc. Trong bài đăng này, chúng tôi sẽ xem qua các thông tin thiết yếu về gấu trúc, bao gồm cách cài đặt nó, cách sử dụng của nó và cách thức hoạt động với các gói phân tích dữ liệu Python phổ biến khác như Matplotlib và Scikit-learn.matplotlib and scikit-learn.

Tài nguyên bài viết

  • Ipython Notebook và dữ liệu có sẵn trên GitHub

Các bài viết khác trong loạt bài này

  • Giới thiệu ứng dụng cho Numpy

Pandas có rất nhiều cách sử dụng đến mức có thể có ý nghĩa khi liệt kê những điều nó không thể làm thay vì những gì nó có thể làm.

Công cụ này về cơ bản là nhà dữ liệu của bạn. Thông qua Pandas, bạn làm quen với dữ liệu của mình bằng cách làm sạch, biến đổi và phân tích nó.

Ví dụ: giả sử bạn muốn khám phá một bộ dữ liệu được lưu trữ trong CSV trên máy tính của bạn. Pandas sẽ trích xuất dữ liệu từ CSV đó vào một khung dữ liệu - một bảng, về cơ bản - sau đó cho phép bạn làm những việc như:

  • Tính toán số liệu thống kê và trả lời các câu hỏi về dữ liệu, như
    • Trung bình, trung bình, tối đa hoặc phút của mỗi cột là bao nhiêu?
    • Cột A có tương quan với cột B không?
    • Phân phối dữ liệu trong cột C trông như thế nào?
  • Làm sạch dữ liệu bằng cách thực hiện những việc như xóa các giá trị bị thiếu và lọc các hàng hoặc cột theo một số tiêu chí
  • Trực quan hóa dữ liệu với sự trợ giúp từ matplotlib. Biểu đồ thanh, dòng, biểu đồ, bong bóng, và nhiều hơn nữa.
  • Lưu trữ dữ liệu được làm sạch, chuyển đổi trở lại thành CSV, tệp hoặc cơ sở dữ liệu khác

Trước khi bạn nhảy vào mô hình hóa hoặc trực quan hóa phức tạp, bạn cần hiểu rõ về bản chất của bộ dữ liệu và gấu trúc của bạn là con đường tốt nhất để làm điều đó.

Hướng dẫn python pandas tutorial with examples - hướng dẫn pandas python với các ví dụ

Không chỉ thư viện Pandas là thành phần trung tâm của bộ công cụ khoa học dữ liệu mà còn được sử dụng cùng với các thư viện khác trong bộ sưu tập đó.

Pandas được xây dựng trên đỉnh của gói numpy, có nghĩa là rất nhiều cấu trúc của Numpy được sử dụng hoặc nhân rộng trong gấu trúc. Dữ liệu trong gấu trúc thường được sử dụng để cung cấp phân tích thống kê trong scipy, vẽ các hàm từ matplotlib và thuật toán học máy trong scikit-learn.NumPy package, meaning a lot of the structure of NumPy is used or replicated in Pandas. Data in pandas is often used to feed statistical analysis in SciPy, plotting functions from Matplotlib, and machine learning algorithms in Scikit-learn.

Notebook Jupyter cung cấp một môi trường tốt để sử dụng gấu trúc để thực hiện khám phá và mô hình hóa dữ liệu, nhưng gấu trúc cũng có thể được sử dụng trong các trình soạn thảo văn bản dễ dàng như vậy.

Notebook Jupyter cho chúng tôi khả năng thực thi mã trong một ô cụ thể trái ngược với việc chạy toàn bộ tệp. Điều này tiết kiệm rất nhiều thời gian khi làm việc với các bộ dữ liệu lớn và các phép biến đổi phức tạp. Notebook cũng cung cấp một cách dễ dàng để trực quan hóa các khung và sơ đồ dữ liệu của gandas. Như một vấn đề thực tế, bài viết này đã được tạo ra hoàn toàn trong một cuốn sổ Jupyter.

Nếu bạn không có bất kỳ kinh nghiệm mã hóa trong Python, thì bạn nên tránh xa việc học gấu trúc cho đến khi bạn làm. Bạn không cần phải ở cấp độ của kỹ sư phần mềm, nhưng bạn nên rất giỏi về những điều cơ bản, chẳng hạn như danh sách, bộ dữ liệu, từ điển, chức năng và vòng lặp. Ngoài ra, tôi cũng khuyên bạn nên làm quen với Numpy do những điểm tương đồng được đề cập ở trên.NumPy due to the similarities mentioned above.

Nếu bạn đang tìm kiếm một nơi tốt để học Python, Python cho mọi người trên Coursera là tuyệt vời (và miễn phí).

Hơn nữa, đối với những người muốn thực hiện một chương trình giáo dục khoa học dữ liệu dữ liệu hoặc một số chương trình giáo dục khoa học dữ liệu được tăng tốc khác, bạn rất khuyến khích bạn bắt đầu tự học gấu trúc trước khi bắt đầu chương trình.

Mặc dù các chương trình tăng tốc dạy cho bạn gấu trúc, các kỹ năng tốt hơn trước đó có nghĩa là bạn sẽ có thể tối đa hóa thời gian để học và làm chủ các tài liệu phức tạp hơn.

Pandas là một gói dễ dàng để cài đặt. Mở chương trình thiết bị đầu cuối của bạn (cho người dùng MAC) hoặc dòng lệnh (cho người dùng PC) và cài đặt nó bằng một trong các lệnh sau:

df = pd.read_csv('purchases.csv', index_col=0)

df
9

HOẶC

df = pd.read_json('purchases.json')

df
0

Ngoài ra, nếu bạn hiện đang xem bài viết này trong sổ ghi chép Jupyter, bạn có thể chạy ô này:

df = pd.read_json('purchases.json')

df
1 ở đầu chạy các tế bào như thể chúng đang ở trong một thiết bị đầu cuối.

Để nhập gấu trúc, chúng tôi thường nhập nó với một tên ngắn hơn vì nó được sử dụng rất nhiều:

Bây giờ đến các thành phần cơ bản của gấu trúc.

Hai thành phần chính của gấu trúc là

df = pd.read_json('purchases.json')

df
2 và
df = pd.read_json('purchases.json')

df
3.

Một

df = pd.read_json('purchases.json')

df
2 về cơ bản là một cột và
df = pd.read_json('purchases.json')

df
3 là một bảng đa chiều được tạo thành từ một bộ sưu tập của loạt.

Hướng dẫn python pandas tutorial with examples - hướng dẫn pandas python với các ví dụ

DataFrames và sê -ri khá giống nhau ở chỗ nhiều hoạt động mà bạn có thể làm với cái bạn có thể làm với cái kia, chẳng hạn như điền vào các giá trị null và tính toán giá trị trung bình.

Bạn sẽ thấy cách các thành phần này hoạt động khi chúng tôi bắt đầu làm việc với dữ liệu bên dưới.

Tạo DataFrames ngay trong Python rất tốt để biết và khá hữu ích khi kiểm tra các phương pháp và chức năng mới bạn tìm thấy trong tài liệu Pandas.

Có nhiều cách để tạo một khung dữ liệu từ đầu, nhưng một tùy chọn tuyệt vời là chỉ sử dụng một

df = pd.read_json('purchases.json')

df
6 đơn giản.

Giả sử chúng ta có một giá đỡ trái cây bán táo và cam. Chúng tôi muốn có một cột cho mỗi trái cây và một hàng cho mỗi lần mua của khách hàng. Để tổ chức điều này như một từ điển cho gấu trúc, chúng ta có thể làm một cái gì đó như:

data = {
    'apples': [3, 2, 0, 1], 
    'oranges': [0, 3, 7, 2]
}

Và sau đó chuyển nó cho Trình xây dựng DataFrame Pandas:

purchases = pd.DataFrame(data)

purchases

Làm thế nào mà nó hoạt động?

Mỗi mục (khóa, giá trị) trong

df = pd.read_json('purchases.json')

df
7 tương ứng với một cột trong khung dữ liệu kết quả.

Chỉ số của khung dữ liệu này đã được cung cấp cho chúng tôi về việc tạo ra các số 0-3, nhưng chúng tôi cũng có thể tạo của riêng mình khi chúng tôi khởi tạo DataFrame.Index of this DataFrame was given to us on creation as the numbers 0-3, but we could also create our own when we initialize the DataFrame.

Hãy có tên khách hàng làm chỉ mục của chúng tôi:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases

Vì vậy, bây giờ chúng tôi có thể định vị đơn đặt hàng của khách hàng bằng cách sử dụng tên của họ:locate a customer's order by using their name:

Out:

apples     3
oranges    0
Name: June, dtype: int64

Có nhiều hơn về việc định vị và trích xuất dữ liệu từ DataFrame sau này, nhưng bây giờ bạn sẽ có thể tạo một khung dữ liệu với bất kỳ dữ liệu ngẫu nhiên nào để tìm hiểu.

Chúng ta hãy chuyển sang một số phương thức nhanh chóng để tạo các khung dữ liệu từ nhiều nguồn khác.

Nó khá đơn giản để tải dữ liệu từ các định dạng tệp khác nhau vào khung dữ liệu. Trong các ví dụ sau, chúng tôi sẽ tiếp tục sử dụng dữ liệu táo và cam, nhưng lần này nó đến từ các tệp khác nhau.

Với các tệp CSV, tất cả những gì bạn cần là một dòng duy nhất để tải dữ liệu:

df = pd.read_csv('purchases.csv')

df

CSV không có các chỉ mục như DataFrames của chúng tôi, vì vậy tất cả những gì chúng tôi cần làm chỉ là chỉ định

df = pd.read_json('purchases.json')

df
8 khi đọc:

df = pd.read_csv('purchases.csv', index_col=0)

df

Ở đây chúng tôi đặt chỉ mục là cột 0.

Bạn sẽ thấy rằng hầu hết các CSV sẽ không bao giờ có cột chỉ mục và vì vậy thông thường bạn không phải lo lắng về bước này.

Nếu bạn có tệp JSON - về cơ bản là Python

df = pd.read_json('purchases.json')

df
6 - gấu trúc có thể đọc được điều này một cách dễ dàng như vậy:

df = pd.read_json('purchases.json')

df

Lưu ý lần này chỉ số của chúng tôi đến với chúng tôi một cách chính xác vì sử dụng JSON cho phép các chỉ mục hoạt động thông qua việc làm tổ. Hãy thoải mái mở

import sqlite3

con = sqlite3.connect("database.db")
0 trong một notepad để bạn có thể thấy nó hoạt động như thế nào.

Pandas sẽ cố gắng tìm ra cách tạo một khung dữ liệu bằng cách phân tích cấu trúc của JSON của bạn và đôi khi nó không đúng. Thường thì bạn sẽ cần đặt đối số từ khóa

import sqlite3

con = sqlite3.connect("database.db")
1 tùy thuộc vào cấu trúc, vì vậy hãy xem DOCE_JSON DOCS về đối số đó để xem bạn đang sử dụng hướng nào.

Nếu bạn làm việc với dữ liệu từ cơ sở dữ liệu SQL, trước tiên bạn cần thiết lập kết nối bằng thư viện Python thích hợp, thì hãy chuyển truy vấn cho Gandas. Ở đây chúng tôi sẽ sử dụng SQLite để chứng minh.

Đầu tiên, chúng tôi cần cài đặt

import sqlite3

con = sqlite3.connect("database.db")
2, vì vậy hãy chạy lệnh này trong thiết bị đầu cuối của bạn:

import sqlite3

con = sqlite3.connect("database.db")
3

Hoặc chạy di động này nếu bạn đang ở trong một cuốn sổ tay:

import sqlite3

con = sqlite3.connect("database.db")
4 được sử dụng để tạo kết nối với cơ sở dữ liệu mà sau đó chúng ta có thể sử dụng để tạo DataFrame thông qua truy vấn
import sqlite3

con = sqlite3.connect("database.db")
5.

Vì vậy, trước tiên chúng tôi sẽ tạo kết nối với tệp cơ sở dữ liệu SQLite:

import sqlite3

con = sqlite3.connect("database.db")

Mẹo SQL

Nếu bạn có dữ liệu trong PostgreSQL, MySQL hoặc một số máy chủ SQL khác, bạn sẽ cần có được thư viện Python phù hợp để tạo kết nối. Ví dụ:

import sqlite3

con = sqlite3.connect("database.db")
6 (liên kết) là một thư viện thường được sử dụng để tạo kết nối với PostgreSQL. Hơn nữa, bạn sẽ tạo kết nối với URI cơ sở dữ liệu thay vì một tệp như chúng tôi đã làm ở đây với SQLite.

Đối với một khóa học tuyệt vời trên SQL, hãy xem SQL Bootcamp hoàn chỉnh trên Udemy

Trong cơ sở dữ liệu SQLite này, chúng tôi có một bảng có tên là Mua và chỉ mục của chúng tôi nằm trong một cột có tên là "Index".

Bằng cách chuyển một truy vấn chọn và

import sqlite3

con = sqlite3.connect("database.db")
7 của chúng tôi, chúng tôi có thể đọc từ bảng mua hàng:

df = pd.read_sql_query("SELECT * FROM purchases", con)

df

Giống như với CSV, chúng ta có thể vượt qua

import sqlite3

con = sqlite3.connect("database.db")
8, nhưng chúng ta cũng có thể đặt một chỉ mục sau khi thực tế:

df = df.set_index('index')

df

Trên thực tế, chúng tôi có thể sử dụng

import sqlite3

con = sqlite3.connect("database.db")
9 trên bất kỳ khung dữ liệu nào bằng bất kỳ cột nào bất cứ lúc nào. Sê -ri lập chỉ mục và DataFrames là một nhiệm vụ rất phổ biến, và các cách làm khác nhau là đáng nhớ.

Vì vậy, sau khi làm việc rộng rãi về việc làm sạch dữ liệu của bạn, giờ đây bạn đã sẵn sàng để lưu nó dưới dạng một tập tin bạn chọn. Tương tự như cách chúng ta đọc trong dữ liệu, Pandas cung cấp các lệnh trực quan để lưu nó:

purchases = pd.DataFrame(data)

purchases
0

Khi chúng tôi lưu các tệp JSON và CSV, tất cả những gì chúng tôi phải nhập vào các chức năng đó là tên tệp mong muốn của chúng tôi với phần mở rộng tệp thích hợp. Với SQL, chúng tôi không tạo một tệp mới mà thay vào đó, chèn một bảng mới vào cơ sở dữ liệu bằng biến

import sqlite3

con = sqlite3.connect("database.db")
7 của chúng tôi từ trước.

Chúng ta hãy chuyển sang nhập một số dữ liệu trong thế giới thực và chi tiết một vài hoạt động mà bạn sẽ sử dụng rất nhiều.

DataFrames sở hữu hàng trăm phương pháp và các hoạt động khác rất quan trọng đối với bất kỳ phân tích nào. Là người mới bắt đầu, bạn nên biết các hoạt động thực hiện các phép biến đổi đơn giản của dữ liệu của bạn và các hoạt động cung cấp phân tích thống kê cơ bản.

Hãy tải trong bộ dữ liệu IMDB Phim để bắt đầu:

purchases = pd.DataFrame(data)

purchases
1

Chúng tôi đang tải bộ dữ liệu này từ CSV và chỉ định các tiêu đề phim là chỉ mục của chúng tôi.

Điều đầu tiên cần làm khi mở một bộ dữ liệu mới là in ra một vài hàng để giữ như một tài liệu tham khảo trực quan. Chúng tôi thực hiện điều này với

df = pd.read_sql_query("SELECT * FROM purchases", con)

df
1:

df = pd.read_sql_query("SELECT * FROM purchases", con)

df
1 xuất ra năm hàng đầu tiên của DataFrame của bạn theo mặc định, nhưng chúng tôi cũng có thể vượt qua một số:
df = pd.read_sql_query("SELECT * FROM purchases", con)

df
3 sẽ xuất ra mười hàng hàng đầu chẳng hạn.first five rows of your DataFrame by default, but we could also pass a number as well:
df = pd.read_sql_query("SELECT * FROM purchases", con)

df
3 would output the top ten rows, for example.

Để xem năm hàng cuối cùng sử dụng

df = pd.read_sql_query("SELECT * FROM purchases", con)

df
4.
df = pd.read_sql_query("SELECT * FROM purchases", con)

df
5 cũng chấp nhận một số và trong trường hợp này, chúng tôi in hai hàng dưới cùng .:last five rows use
df = pd.read_sql_query("SELECT * FROM purchases", con)

df
4.
df = pd.read_sql_query("SELECT * FROM purchases", con)

df
5 also accepts a number, and in this case we printing the bottom two rows.:

Thông thường khi chúng tôi tải trong bộ dữ liệu, chúng tôi muốn xem năm hàng đầu tiên hoặc hơn để xem những gì dưới mui xe. Ở đây chúng ta có thể thấy tên của mỗi cột, chỉ mục và ví dụ về các giá trị trong mỗi hàng.

Bạn sẽ nhận thấy rằng chỉ mục trong DataFrame của chúng tôi là cột tiêu đề mà bạn có thể biết bằng cách tiêu đề từ thấp hơn một chút so với phần còn lại của các cột.

df = pd.read_sql_query("SELECT * FROM purchases", con)

df
6 phải là một trong những lệnh đầu tiên bạn chạy sau khi tải dữ liệu của mình:

Out:

purchases = pd.DataFrame(data)

purchases
2

df = pd.read_sql_query("SELECT * FROM purchases", con)

df
6 cung cấp các chi tiết cần thiết về bộ dữ liệu của bạn, chẳng hạn như số lượng hàng và cột, số lượng giá trị không null, loại dữ liệu nào trong mỗi cột và số lượng bộ nhớ của bạn đang sử dụng.

Lưu ý trong bộ dữ liệu phim của chúng tôi, chúng tôi có một số giá trị bị thiếu rõ ràng trong các cột

df = pd.read_sql_query("SELECT * FROM purchases", con)

df
8 và
df = pd.read_sql_query("SELECT * FROM purchases", con)

df
9. Chúng ta sẽ xem xét cách xử lý những người trong một chút.

Nhìn thấy kiểu dữ liệu nhanh chóng thực sự khá hữu ích. Hãy tưởng tượng bạn vừa nhập một số JSON và các số nguyên được ghi lại là chuỗi. Bạn đi làm một số số học và tìm ra một ngoại lệ "không hỗ trợ" vì bạn không thể làm toán với các chuỗi. Gọi

df = pd.read_sql_query("SELECT * FROM purchases", con)

df
6 sẽ nhanh chóng chỉ ra rằng cột của bạn mà bạn nghĩ là tất cả các số nguyên thực sự là các đối tượng chuỗi.

Một thuộc tính nhanh và hữu ích khác là

df = df.set_index('index')

df
1, chỉ xuất ra một bộ (hàng, cột):

Lưu ý rằng

df = df.set_index('index')

df
1 không có dấu ngoặc đơn và là một định dạng đơn giản (hàng, cột). Vì vậy, chúng tôi có 1000 hàng và 11 cột trong phim DataFrame của chúng tôi.1000 rows and 11 columns in our movies DataFrame.

Bạn sẽ đến

df = df.set_index('index')

df
1 rất nhiều khi làm sạch và chuyển đổi dữ liệu. Ví dụ: bạn có thể lọc một số hàng dựa trên một số tiêu chí và sau đó muốn biết nhanh có bao nhiêu hàng đã bị xóa.

Bộ dữ liệu này không có hàng trùng lặp, nhưng điều quan trọng là phải xác minh rằng bạn không tổng hợp các hàng trùng lặp.

Để chứng minh, chúng ta chỉ cần tăng gấp đôi số lượng phim của chúng tôi bằng cách tự thêm nó:

purchases = pd.DataFrame(data)

purchases
3

Sử dụng

df = df.set_index('index')

df
4 sẽ trả về một bản sao mà không ảnh hưởng đến DataFrame gốc. Chúng tôi đang chụp bản sao này trong
df = df.set_index('index')

df
5 vì vậy chúng tôi không làm việc với dữ liệu thực.

Thông báo Gọi

df = df.set_index('index')

df
1 nhanh chóng chứng minh các hàng DataFrame của chúng tôi đã tăng gấp đôi.

Bây giờ chúng ta có thể thử bỏ các bản sao:

purchases = pd.DataFrame(data)

purchases
4

Giống như

df = df.set_index('index')

df
4, phương thức
df = df.set_index('index')

df
8 cũng sẽ trả về một bản sao của DataFrame của bạn, nhưng lần này với các bản sao được xóa. Gọi
df = df.set_index('index')

df
1 xác nhận chúng tôi trở lại 1000 hàng của bộ dữ liệu ban đầu của chúng tôi.

Đó là một chút dài dòng để tiếp tục gán dataFrames cho cùng một biến như trong ví dụ này. Vì lý do này, Pandas có đối số từ khóa

purchases = pd.DataFrame(data)

purchases
00 trên nhiều phương thức của nó. Sử dụng
purchases = pd.DataFrame(data)

purchases
01 sẽ sửa đổi đối tượng DataFrame tại chỗ:

purchases = pd.DataFrame(data)

purchases
5

Bây giờ

purchases = pd.DataFrame(data)

purchases
02 của chúng tôi sẽ tự động dữ liệu được chuyển đổi.

Một đối số quan trọng khác cho

df = df.set_index('index')

df
8 là
purchases = pd.DataFrame(data)

purchases
04, có ba tùy chọn có thể:

  • purchases = pd.DataFrame(data)
    
    purchases
    05: (mặc định) Drop trùng lặp ngoại trừ lần xuất hiện đầu tiên.
  • purchases = pd.DataFrame(data)
    
    purchases
    06: Drop trùng lặp ngoại trừ lần xuất hiện cuối cùng.
  • purchases = pd.DataFrame(data)
    
    purchases
    07: Thả tất cả các bản sao.

Vì chúng tôi đã không xác định sự phân biệt

purchases = pd.DataFrame(data)

purchases
04 trong ví dụ trước, nó được mặc định là
purchases = pd.DataFrame(data)

purchases
05. Điều này có nghĩa là nếu hai hàng là cùng một gấu trúc sẽ thả hàng thứ hai và giữ hàng đầu tiên. Sử dụng
purchases = pd.DataFrame(data)

purchases
06 có tác dụng ngược lại: hàng đầu tiên bị bỏ.

purchases = pd.DataFrame(data)

purchases
04, mặt khác, sẽ bỏ tất cả các bản sao. Nếu hai hàng giống nhau thì cả hai sẽ bị rơi. Xem những gì xảy ra với
purchases = pd.DataFrame(data)

purchases
02:

purchases = pd.DataFrame(data)

purchases
6

Vì tất cả các hàng là bản sao,

purchases = pd.DataFrame(data)

purchases
13 đã bỏ tất cả chúng dẫn đến các hàng không bị bỏ lại. Nếu bạn đang tự hỏi tại sao bạn muốn làm điều này, một lý do là nó cho phép bạn xác định vị trí tất cả các bản sao trong bộ dữ liệu của bạn. Khi các lựa chọn có điều kiện được hiển thị bên dưới, bạn sẽ thấy cách thực hiện điều đó.

Nhiều lần bộ dữ liệu sẽ có tên cột dài dòng với các ký hiệu, từ trên và chữ thường, khoảng trắng và lỗi chính tả. Để làm cho việc chọn dữ liệu theo tên cột dễ dàng hơn, chúng ta có thể dành một chút thời gian để dọn dẹp tên của họ.

Đây là cách in tên cột của bộ dữ liệu của chúng tôi:

Out:

purchases = pd.DataFrame(data)

purchases
7

purchases = pd.DataFrame(data)

purchases
14 không chỉ có ích nếu bạn muốn đổi tên các cột bằng cách cho phép sao chép và dán đơn giản, nó cũng hữu ích nếu bạn cần hiểu lý do tại sao bạn nhận được
purchases = pd.DataFrame(data)

purchases
15 khi chọn dữ liệu theo cột.

Chúng ta có thể sử dụng phương thức

purchases = pd.DataFrame(data)

purchases
16 để đổi tên một số cột hoặc tất cả các cột thông qua
df = pd.read_json('purchases.json')

df
6. Chúng tôi không muốn dấu ngoặc đơn, vì vậy hãy đổi tên chúng:

purchases = pd.DataFrame(data)

purchases
8

Out:

purchases = pd.DataFrame(data)

purchases
9

Xuất sắc. Nhưng điều gì sẽ xảy ra nếu chúng ta muốn viết thường tất cả các tên? Thay vì sử dụng

purchases = pd.DataFrame(data)

purchases
16, chúng tôi cũng có thể đặt danh sách các tên thành các cột như vậy:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases
0

Out:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases
1

Nhưng đó là quá nhiều công việc. Thay vì chỉ đổi tên từng cột theo cách thủ công, chúng ta có thể thực hiện một danh sách hiểu:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases
2

Out:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases
1

purchases = pd.DataFrame(data)

purchases
19 (và
df = pd.read_json('purchases.json')

df
6) Các tính toán có ích rất nhiều khi làm việc với gấu trúc và dữ liệu nói chung.

Đó là một ý tưởng tốt để viết thường, xóa các ký tự đặc biệt và thay thế các khoảng trống bằng dấu gạch dưới nếu bạn làm việc với một bộ dữ liệu trong một thời gian.

Khi khám phá dữ liệu, rất có thể bạn sẽ gặp các giá trị thiếu hoặc null, về cơ bản là các trình giữ chỗ cho các giá trị không tồn tại. Thông thường nhất là bạn sẽ thấy Python của

purchases = pd.DataFrame(data)

purchases
21 hoặc
purchases = pd.DataFrame(data)

purchases
22 của Numpy, mỗi trong số đó được xử lý khác nhau trong một số tình huống.

Có hai lựa chọn trong việc xử lý NULLS:

  1. Loại bỏ các hàng hoặc cột với nulls
  2. Thay thế null bằng các giá trị không null, một kỹ thuật được gọi là cắt bỏimputation

Hãy tính toán tổng số null trong mỗi cột của bộ dữ liệu của chúng tôi. Bước đầu tiên là kiểm tra ô nào trong khung dữ liệu của chúng tôi là NULL:

Lưu ý

purchases = pd.DataFrame(data)

purchases
23 Trả về một khung dữ liệu trong đó mỗi ô là đúng hoặc sai tùy thuộc vào trạng thái null của ô đó.

Để đếm số lượng null trong mỗi cột, chúng tôi sử dụng hàm tổng hợp để tổng hợp:

Out:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases
4

purchases = pd.DataFrame(data)

purchases
24 chỉ bằng iteself không hữu ích và thường được sử dụng cùng với các phương pháp khác, như
purchases = pd.DataFrame(data)

purchases
25.

Bây giờ chúng ta có thể thấy rằng dữ liệu của chúng ta có 128 giá trị bị thiếu cho

purchases = pd.DataFrame(data)

purchases
26 và 64 giá trị bị thiếu cho
purchases = pd.DataFrame(data)

purchases
27.128 missing values for
purchases = pd.DataFrame(data)

purchases
26 and 64 missing values for
purchases = pd.DataFrame(data)

purchases
27.

Các nhà khoa học và nhà phân tích dữ liệu thường xuyên phải đối mặt với tình huống khó xử khi bỏ hoặc đưa ra các giá trị null, và là một quyết định đòi hỏi kiến ​​thức sâu sắc về dữ liệu của bạn và bối cảnh của nó. Nhìn chung, xóa dữ liệu NULL chỉ được đề xuất nếu bạn có một lượng nhỏ dữ liệu bị thiếu.

Xóa null là khá đơn giản:

Hoạt động này sẽ xóa bất kỳ hàng nào với ít nhất một giá trị null duy nhất, nhưng nó sẽ trả về một dataFrame mới mà không làm thay đổi bản gốc. Bạn cũng có thể chỉ định

purchases = pd.DataFrame(data)

purchases
01 trong phương pháp này.row with at least a single null value, but it will return a new DataFrame without altering the original one. You could specify
purchases = pd.DataFrame(data)

purchases
01 in this method as well.

Vì vậy, trong trường hợp của bộ dữ liệu của chúng tôi, thao tác này sẽ loại bỏ 128 hàng trong đó

purchases = pd.DataFrame(data)

purchases
26 là null và 64 hàng trong đó
purchases = pd.DataFrame(data)

purchases
27 là null. Điều này rõ ràng có vẻ như là một sự lãng phí vì có dữ liệu hoàn toàn tốt trong các cột khác của những hàng bị rơi. Đó là lý do tại sao chúng ta sẽ xem xét việc cắt bỏ tiếp theo.

Khác với việc thả hàng, bạn cũng có thể thả các cột có giá trị null bằng cách đặt

purchases = pd.DataFrame(data)

purchases
31:

Trong bộ dữ liệu của chúng tôi, thao tác này sẽ giảm các cột

purchases = pd.DataFrame(data)

purchases
26 và
purchases = pd.DataFrame(data)

purchases
27

Trực giác

Điều gì với cái này ____131Parameter?

purchases = pd.DataFrame(data)

purchases
31parameter?

Nó không rõ ràng ngay lập tức

purchases = pd.DataFrame(data)

purchases
35 đến từ đâu và tại sao bạn cần nó là 1 để nó ảnh hưởng đến các cột. Để xem tại sao, chỉ cần nhìn vào đầu ra
df = df.set_index('index')

df
1:

purchases = pd.DataFrame(data)

purchases
37

purchases = pd.DataFrame(data)

purchases
38

Như chúng ta đã biết ở trên, đây là một bộ thuật đại diện cho hình dạng của DataFrame, tức là 1000 hàng và 11 cột. Lưu ý rằng các hàng nằm ở Index Zero của tuple này và các cột đang ở Index một trong những bộ thuật này. Đây là lý do tại sao

purchases = pd.DataFrame(data)

purchases
31 ảnh hưởng đến các cột. Điều này xuất phát từ Numpy, và là một ví dụ tuyệt vời về lý do tại sao việc học Numpy là giá trị thời gian của bạn.index one of this tuple. This is why
purchases = pd.DataFrame(data)

purchases
31 affects columns. This comes from NumPy, and is a great example of why learning NumPy is worth your time.

Imputution là một kỹ thuật kỹ thuật tính năng thông thường được sử dụng để giữ dữ liệu có giá trị có giá trị null.

Có thể có những trường hợp thả mỗi hàng với giá trị null sẽ loại bỏ một đoạn quá lớn khỏi bộ dữ liệu của bạn, vì vậy thay vào đó chúng ta có thể áp đặt null đó với một giá trị khác, thường là giá trị trung bình hoặc trung bình của cột đó.mean or the median of that column.

Chúng ta hãy xem xét các giá trị bị thiếu trong cột

purchases = pd.DataFrame(data)

purchases
26. Đầu tiên chúng tôi sẽ trích xuất cột đó vào biến của riêng nó:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases
5

Sử dụng dấu ngoặc vuông là cách chung, chúng tôi chọn các cột trong DataFrame.

Nếu bạn nhớ lại khi chúng tôi tạo DataFrames từ đầu, các khóa của

df = pd.read_json('purchases.json')

df
6 đã kết thúc dưới dạng tên cột. Bây giờ khi chúng tôi chọn các cột của DataFrame, chúng tôi sử dụng dấu ngoặc giống như nếu chúng tôi đang truy cập từ điển Python.

purchases = pd.DataFrame(data)

purchases
42 hiện chứa một loạt:

Out:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases
6

Định dạng hơi khác với DataFrame, nhưng chúng tôi vẫn có chỉ mục

purchases = pd.DataFrame(data)

purchases
43 của chúng tôi.

Chúng tôi sẽ áp đặt các giá trị còn thiếu của doanh thu bằng cách sử dụng giá trị trung bình. Đây là giá trị trung bình:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases
7

Với giá trị trung bình, hãy điền vào các null bằng

purchases = pd.DataFrame(data)

purchases
44:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases
8

Bây giờ chúng tôi đã thay thế tất cả các null trong

purchases = pd.DataFrame(data)

purchases
42 bằng giá trị trung bình của cột. Lưu ý rằng bằng cách sử dụng
purchases = pd.DataFrame(data)

purchases
01, chúng tôi thực sự đã ảnh hưởng đến
purchases = pd.DataFrame(data)

purchases
47 ban đầu:

Out:

purchases = pd.DataFrame(data, index=['June', 'Robert', 'Lily', 'David'])

purchases
9

Trao đổi toàn bộ cột có cùng giá trị như thế này là một ví dụ cơ bản. Nó sẽ là một ý tưởng tốt hơn để thử một sự buộc tội chi tiết hơn của thể loại hoặc giám đốc.

Ví dụ, bạn sẽ tìm thấy giá trị trung bình của doanh thu được tạo ra trong mỗi thể loại riêng lẻ và áp đặt các null trong mỗi thể loại với ý nghĩa của thể loại đó.

Bây giờ chúng ta hãy xem xét nhiều cách hơn để kiểm tra và hiểu bộ dữ liệu.

Sử dụng

purchases = pd.DataFrame(data)

purchases
48 trên toàn bộ DataFrame, chúng tôi có thể nhận được một bản tóm tắt về phân phối các biến liên tục:

Hiểu những con số nào liên tục cũng có ích khi nghĩ về loại cốt truyện sẽ sử dụng để thể hiện dữ liệu của bạn một cách trực quan.

purchases = pd.DataFrame(data)

purchases
49 cũng có thể được sử dụng trên một biến phân loại để có được số lượng hàng, số lượng danh mục duy nhất, danh mục hàng đầu và freq của danh mục hàng đầu:

apples     3
oranges    0
Name: June, dtype: int64
0

Out:

apples     3
oranges    0
Name: June, dtype: int64
1

Điều này cho chúng ta biết rằng cột thể loại có 207 giá trị duy nhất, giá trị hàng đầu là hành động/phiêu lưu/khoa học viễn tưởng, hiển thị 50 lần (FREQ).

purchases = pd.DataFrame(data)

purchases
50 có thể cho chúng ta biết tần số của tất cả các giá trị trong một cột:

apples     3
oranges    0
Name: June, dtype: int64
2

Out:

apples     3
oranges    0
Name: June, dtype: int64
3

Mối quan hệ giữa các biến liên tục

Bằng cách sử dụng phương pháp tương quan

purchases = pd.DataFrame(data)

purchases
51, chúng ta có thể tạo mối quan hệ giữa mỗi biến liên tục:

Các bảng tương quan là một biểu diễn số của các mối quan hệ bivariate trong bộ dữ liệu.

Các số dương cho thấy một mối tương quan tích cực - cái này đi lên bên kia đi lên - và các số âm biểu thị một mối tương quan nghịch đảo - cái này đi lên cái kia đi xuống. 1.0 chỉ ra một mối tương quan hoàn hảo.

Vì vậy, nhìn vào hàng đầu tiên, cột đầu tiên chúng ta thấy

purchases = pd.DataFrame(data)

purchases
52 có mối tương quan hoàn hảo với chính nó, điều này là hiển nhiên. Mặt khác, mối tương quan giữa
purchases = pd.DataFrame(data)

purchases
53 và
purchases = pd.DataFrame(data)

purchases
26 là 0,6. Thú vị hơn một chút.

Kiểm tra các mối quan hệ bivariate có ích khi bạn có kết quả hoặc biến phụ thuộc và muốn thấy các tính năng tương quan nhất với sự gia tăng hoặc giảm kết quả. Bạn có thể biểu diễn trực quan các mối quan hệ bivariate với các biểu đồ phân tán (được xem bên dưới trong phần vẽ âm mưu).

Để có cái nhìn sâu sắc hơn về các bản tóm tắt dữ liệu, hãy xem các số liệu thống kê thiết yếu cho khoa học dữ liệu.

Bây giờ chúng ta hãy xem xét nhiều hơn về việc thao túng các khung dữ liệu.

Cho đến bây giờ chúng tôi đã tập trung vào một số bản tóm tắt cơ bản về dữ liệu của chúng tôi. Chúng tôi đã tìm hiểu về trích xuất cột đơn giản bằng cách sử dụng dấu ngoặc đơn và chúng tôi đã đặt các giá trị null trong một cột bằng cách sử dụng

purchases = pd.DataFrame(data)

purchases
44. Dưới đây là các phương pháp cắt, lựa chọn và trích xuất khác, bạn sẽ cần sử dụng liên tục.

Điều quan trọng cần lưu ý là, mặc dù nhiều phương thức giống nhau, DataFrames và Sê -ri có các thuộc tính khác nhau, vì vậy bạn sẽ cần chắc chắn biết bạn đang làm việc loại nào nếu không bạn sẽ nhận được lỗi thuộc tính.

Hãy xem xét làm việc với các cột trước.

Bạn đã thấy cách trích xuất một cột bằng dấu ngoặc vuông như thế này:

apples     3
oranges    0
Name: June, dtype: int64
4

Out:

apples     3
oranges    0
Name: June, dtype: int64
5

Điều này sẽ trả lại một loạt. Để trích xuất một cột dưới dạng DataFrame, bạn cần truyền danh sách các tên cột. Trong trường hợp của chúng tôi, đó chỉ là một cột duy nhất:

apples     3
oranges    0
Name: June, dtype: int64
6

apples     3
oranges    0
Name: June, dtype: int64
7

Vì nó chỉ là một danh sách, việc thêm một tên cột khác là dễ dàng:

apples     3
oranges    0
Name: June, dtype: int64
8

Bây giờ chúng ta sẽ xem xét nhận dữ liệu theo hàng.

Đối với các hàng, chúng tôi có hai tùy chọn:

  • purchases = pd.DataFrame(data)
    
    purchases
    56 - định vị theo tênlocates by name
  • ________ 157- Định vị theo chỉ số sốlocates by numerical index

Hãy nhớ rằng chúng tôi vẫn được lập chỉ mục bởi tiêu đề phim, vì vậy để sử dụng

purchases = pd.DataFrame(data)

purchases
56, chúng tôi cung cấp cho nó tiêu đề của một bộ phim:

apples     3
oranges    0
Name: June, dtype: int64
9

Out:

df = pd.read_csv('purchases.csv')

df
0

Mặt khác, với

purchases = pd.DataFrame(data)

purchases
59, chúng tôi cung cấp cho nó chỉ số số của Prometheus:

purchases = pd.DataFrame(data)

purchases
60 và
purchases = pd.DataFrame(data)

purchases
59 có thể được coi là tương tự như Python
purchases = pd.DataFrame(data)

purchases
19 cắt lát. Để hiển thị điều này hơn nữa, hãy chọn nhiều hàng.

Làm thế nào bạn sẽ làm điều đó với một danh sách? Trong Python, chỉ cần cắt lát với các giá đỡ như

purchases = pd.DataFrame(data)

purchases
63. Nó hoạt động theo cùng một cách trong gấu trúc:

df = pd.read_csv('purchases.csv')

df
1

Một điểm khác biệt quan trọng giữa việc sử dụng

purchases = pd.DataFrame(data)

purchases
56 và
purchases = pd.DataFrame(data)

purchases
57 để chọn nhiều hàng là
purchases = pd.DataFrame(data)

purchases
56 bao gồm bộ phim hát trong kết quả, nhưng khi sử dụng
purchases = pd.DataFrame(data)

purchases
57, chúng tôi sẽ nhận được hàng 1: 4 nhưng bộ phim tại Index 4 (Suicide Squad) không được bao gồm.

Cắt với

purchases = pd.DataFrame(data)

purchases
57 tuân theo các quy tắc tương tự như cắt với danh sách, đối tượng ở chỉ mục ở cuối không được bao gồm.

Chúng tôi đã đi qua cách chọn các cột và hàng, nhưng nếu chúng tôi muốn lựa chọn có điều kiện thì sao?

Ví dụ, điều gì sẽ xảy ra nếu chúng ta muốn lọc các bộ phim của mình DataFrame để chỉ hiển thị các bộ phim do Ridley Scott hoặc các bộ phim đạo diễn với xếp hạng lớn hơn hoặc bằng 8,0?

Để làm điều đó, chúng tôi lấy một cột từ DataFrame và áp dụng điều kiện Boolean cho nó. Đây là một ví dụ về điều kiện Boolean:

df = pd.read_csv('purchases.csv')

df
2

Out:

df = pd.read_csv('purchases.csv')

df
3

Tương tự như

purchases = pd.DataFrame(data)

purchases
23, điều này trả về một loạt các giá trị đúng và sai: Đúng cho các bộ phim do Ridley Scott đạo diễn và Sai cho những người không được anh ta chỉ đạo.

Chúng tôi muốn lọc tất cả các bộ phim không được đạo diễn bởi Ridley Scott, nói cách khác, chúng tôi không muốn những bộ phim giả. Để trả về các hàng nơi điều kiện đó là đúng, chúng ta phải chuyển hoạt động này vào DataFrame:

df = pd.read_csv('purchases.csv')

df
4

Bạn có thể quen với việc nhìn vào các điều kiện này bằng cách đọc nó như:

Chọn

purchases = pd.DataFrame(data)

purchases
47 Ở đâu
purchases = pd.DataFrame(data)

purchases
47 Giám đốc tương đương với Ridley Scott.
purchases = pd.DataFrame(data)

purchases
47
where
purchases = pd.DataFrame(data)

purchases
47 director equals Ridley Scott.

Chúng ta hãy xem các lựa chọn có điều kiện bằng cách sử dụng các giá trị số bằng cách lọc DataFrame theo xếp hạng:

df = pd.read_csv('purchases.csv')

df
5

Chúng ta có thể tạo ra một số điều kiện phong phú hơn bằng cách sử dụng các toán tử logic

purchases = pd.DataFrame(data)

purchases
72 cho "hoặc" và
purchases = pd.DataFrame(data)

purchases
73 cho "và".

Chúng ta hãy lọc DataFrame để chỉ hiển thị các bộ phim của Christopher Nolan hoặc Ridley Scott:

df = pd.read_csv('purchases.csv')

df
6

Chúng ta cần đảm bảo đánh giá nhóm với dấu ngoặc đơn để Python biết cách đánh giá điều kiện.

Sử dụng phương pháp

purchases = pd.DataFrame(data)

purchases
74, chúng tôi có thể làm cho điều này ngắn gọn hơn mặc dù:

df = pd.read_csv('purchases.csv')

df
7

Giả sử chúng tôi muốn tất cả các bộ phim được phát hành từ năm 2005 đến 2010, có xếp hạng trên 8,0, nhưng được thực hiện dưới tỷ lệ phần trăm thứ 25 trong doanh thu.

Đây là cách chúng ta có thể làm tất cả những điều đó:

df = pd.read_csv('purchases.csv')

df
8

Nếu bạn nhớ lại khi chúng tôi sử dụng

purchases = pd.DataFrame(data)

purchases
49, phần trăm thứ 25 cho doanh thu là khoảng 17,4 và chúng tôi có thể truy cập trực tiếp giá trị này bằng cách sử dụng phương thức
purchases = pd.DataFrame(data)

purchases
76 với phao là 0,25.

Vì vậy, ở đây chúng tôi chỉ có bốn bộ phim phù hợp với tiêu chí đó.

Có thể lặp lại một loạt dữ liệu hoặc loạt như bạn làm với một danh sách, nhưng làm như vậy - đặc biệt là trên các bộ dữ liệu lớn - rất chậm.

Một giải pháp thay thế hiệu quả là

purchases = pd.DataFrame(data)

purchases
77 một hàm cho bộ dữ liệu. Ví dụ: chúng ta có thể sử dụng một hàm để chuyển đổi phim có giá trị 8,0 trở lên thành chuỗi "tốt" và phần còn lại thành "xấu" và sử dụng các giá trị được chuyển đổi này để tạo một cột mới.

Đầu tiên chúng ta sẽ tạo một chức năng mà khi được xếp hạng, xác định xem nó tốt hay xấu:

df = pd.read_csv('purchases.csv')

df
9

Bây giờ chúng tôi muốn gửi toàn bộ cột xếp hạng thông qua chức năng này, đó là những gì

purchases = pd.DataFrame(data)

purchases
77 làm:

df = pd.read_csv('purchases.csv', index_col=0)

df
0

Phương thức

purchases = pd.DataFrame(data)

purchases
79 vượt qua mọi giá trị trong cột
purchases = pd.DataFrame(data)

purchases
80 thông qua
purchases = pd.DataFrame(data)

purchases
81 và sau đó trả về một chuỗi mới. Sê -ri này sau đó được gán cho một cột mới có tên
purchases = pd.DataFrame(data)

purchases
82.

Bạn cũng có thể sử dụng các chức năng ẩn danh là tốt. Hàm Lambda này đạt được kết quả tương tự như

purchases = pd.DataFrame(data)

purchases
81:

df = pd.read_csv('purchases.csv', index_col=0)

df
1

Nhìn chung, sử dụng

purchases = pd.DataFrame(data)

purchases
77 sẽ nhanh hơn nhiều so với lặp lại bằng tay trên các hàng vì gấu trúc đang sử dụng vector hóa.

Vectorization: Một phong cách lập trình máy tính nơi các hoạt động được áp dụng cho toàn bộ mảng thay vì các yếu tố riêng lẻ

Một ví dụ điển hình về việc sử dụng cao

purchases = pd.DataFrame(data)

purchases
77 là trong quá trình xử lý ngôn ngữ tự nhiên (NLP). Bạn sẽ cần áp dụng tất cả các loại chức năng làm sạch văn bản cho các chuỗi để chuẩn bị cho việc học máy.

Một điều tuyệt vời khác về gấu trúc là nó tích hợp với matplotlib, vì vậy bạn có khả năng vẽ trực tiếp các loạt dữ liệu và loạt. Để bắt đầu, chúng tôi cần nhập matplotlib (

purchases = pd.DataFrame(data)

purchases
86):

df = pd.read_csv('purchases.csv', index_col=0)

df
2

Bây giờ chúng ta có thể bắt đầu. Sẽ không có nhiều phạm vi bảo hiểm trên sơ đồ, nhưng nó là đủ để khám phá dữ liệu của bạn một cách dễ dàng.

Tip âm mưu

Đối với các biến phân loại sử dụng biểu đồ thanh* và boxplots.

Đối với các biến liên tục sử dụng biểu đồ, biểu đồ phân tán, đồ thị dòng và boxplots.

Hãy vạch ra mối quan hệ giữa xếp hạng và doanh thu. Tất cả những gì chúng ta cần làm là gọi

purchases = pd.DataFrame(data)

purchases
87 trên
purchases = pd.DataFrame(data)

purchases
47 với một số thông tin về cách xây dựng cốt truyện:

df = pd.read_csv('purchases.csv', index_col=0)

df
3

RESULT:

Hướng dẫn python pandas tutorial with examples - hướng dẫn pandas python với các ví dụ

Có gì với dấu chấm phẩy? Đó không phải là lỗi cú pháp, chỉ là một cách để ẩn đầu ra

purchases = pd.DataFrame(data)

purchases
89 khi vẽ trong máy tính xách tay Jupyter.

Nếu chúng ta muốn vẽ một biểu đồ đơn giản dựa trên một cột, chúng ta có thể gọi biểu đồ trên một cột:

df = pd.read_csv('purchases.csv', index_col=0)

df
4

RESULT:

Hướng dẫn python pandas tutorial with examples - hướng dẫn pandas python với các ví dụ

Bạn có nhớ ví dụ

purchases = pd.DataFrame(data)

purchases
49 khi bắt đầu hướng dẫn này không? Chà, có một biểu diễn đồ họa của phạm vi liên vùng, được gọi là BoxPlot. Hãy nhớ lại những gì
purchases = pd.DataFrame(data)

purchases
48 cung cấp cho chúng ta trên cột xếp hạng:

df = pd.read_csv('purchases.csv', index_col=0)

df
5

Out:

df = pd.read_csv('purchases.csv', index_col=0)

df
6

Sử dụng một BoxPlot, chúng tôi có thể trực quan hóa dữ liệu này:

df = pd.read_csv('purchases.csv', index_col=0)

df
7

RESULT:

Hướng dẫn python pandas tutorial with examples - hướng dẫn pandas python với các ví dụ

Hướng dẫn python pandas tutorial with examples - hướng dẫn pandas python với các ví dụ
Nguồn: *Dữ liệu chảy *

Bằng cách kết hợp dữ liệu phân loại và liên tục, chúng tôi có thể tạo một hộp doanh thu được nhóm theo danh mục xếp hạng mà chúng tôi đã tạo ở trên:

df = pd.read_csv('purchases.csv', index_col=0)

df
8

RESULT:

Hướng dẫn python pandas tutorial with examples - hướng dẫn pandas python với các ví dụ

Đó là ý tưởng chung về âm mưu với gấu trúc. Có quá nhiều lô để đề cập, vì vậy chắc chắn hãy xem các tài liệu

purchases = pd.DataFrame(data)

purchases
92 ở đây để biết thêm thông tin về những gì nó có thể làm.

Khám phá, làm sạch, biến đổi và trực quan hóa dữ liệu với gấu trúc trong Python là một kỹ năng thiết yếu trong khoa học dữ liệu. Chỉ cần làm sạch dữ liệu Wrangling là 80% công việc của bạn với tư cách là một nhà khoa học dữ liệu. Sau một vài dự án và một số thực hành, bạn nên rất thoải mái với hầu hết các điều cơ bản.

Để tiếp tục cải thiện, hãy xem các hướng dẫn mở rộng được cung cấp bởi các tài liệu chính thức của gấu trúc, theo cùng với một vài hạt nhân kaggle và tiếp tục làm việc cho các dự án của riêng bạn!

Tài nguyên

Khoa học dữ liệu ứng dụng với Python - Coursera

Bao gồm một phần giới thiệu về Python, trực quan hóa, học máy, khai thác văn bản và phân tích mạng xã hội trong Python. Cũng cung cấp nhiều câu đố và bài tập đầy thách thức để tăng cường hơn nữa việc học của bạn.

Hoàn thành SQL Bootcamp - Udemy

Một khóa học tuyệt vời để học SQL. Người hướng dẫn giải thích tất cả mọi thứ từ người mới bắt đầu đến các truy vấn và kỹ thuật SQL nâng cao, và cung cấp nhiều bài tập để giúp bạn học.

Pandas trong Python với ví dụ là gì?

Pandas được định nghĩa là một thư viện nguồn mở cung cấp thao tác dữ liệu hiệu suất cao trong Python. Tên của gấu trúc có nguồn gốc từ dữ liệu bảng điều khiển, có nghĩa là một nền kinh tế lượng từ dữ liệu đa chiều. Nó được sử dụng để phân tích dữ liệu trong Python và được phát triển bởi Wes McKinney vào năm 2008.an open-source library that provides high-performance data manipulation in Python. The name of Pandas is derived from the word Panel Data, which means an Econometrics from Multidimensional data. It is used for data analysis in Python and developed by Wes McKinney in 2008.

Làm cách nào để học gấu trúc trong Python?

Làm thế nào để học gấu trúc: từng bước..
Quyết định lý do tại sao bạn muốn học gấu trúc.....
Biết Python.....
Làm quen với các chức năng của gấu trúc.....
Cài đặt gấu trúc.....
Bắt đầu với các dự án Excel/Pandas cơ bản.....
Khi kỹ năng của bạn phát triển, hãy thử các dự án nâng cao hơn.....
Tiếp tục học hỏi và tham gia cộng đồng ..

Học gấu trúc có dễ dàng không?

Pandas là một trong những gói Python đầu tiên bạn nên học vì nó dễ sử dụng, nguồn mở và sẽ cho phép bạn làm việc với số lượng lớn dữ liệu.Nó cho phép thao tác dữ liệu nhanh chóng và hiệu quả, tập hợp dữ liệu và xoay vòng, chức năng chuỗi thời gian linh hoạt, v.v.it's easy to use, open source, and will allow you to work with large quantities of data. It allows fast and efficient data manipulation, data aggregation and pivoting, flexible time series functionality, and more.

Việc sử dụng cơ bản của gấu trúc là gì?

Pandas là một gói Python nguồn mở được sử dụng rộng rãi nhất để phân tích dữ liệu/phân tích dữ liệu và các tác vụ học máy.Nó được xây dựng trên đỉnh của một gói khác có tên Numpy, cung cấp hỗ trợ cho các mảng đa chiều.data science/data analysis and machine learning tasks. It is built on top of another package named Numpy, which provides support for multi-dimensional arrays.