Python có thể phân tích dữ liệu Excel không?

Pandas có lẽ là công cụ tốt nhất để phân tích dữ liệu trong thế giới thực bằng Python. Nó cho phép chúng tôi làm sạch dữ liệu, sắp xếp lại dữ liệu, trực quan hóa và hơn thế nữa

Bạn có thể coi Pandas như một Microsoft Excel tăng áp. Hầu hết các tác vụ bạn có thể thực hiện trong Excel cũng có thể được thực hiện trong Pandas và ngược lại. Điều đó nói rằng, có nhiều lĩnh vực mà Pandas vượt trội hơn Excel

Trong phần giới thiệu về Pandas này, chúng ta sẽ so sánh khung dữ liệu Pandas và Bảng tính Excel, tìm hiểu các cách khác nhau để tạo khung dữ liệu và cách tạo bảng tổng hợp

Ghi chú. Trước khi học Pandas, bạn nên biết ít nhất những điều cơ bản về Python. Nếu bạn chưa quen với Python, hãy xem hướng dẫn này mà tôi đã tạo để bắt đầu với Python ngay lập tức

Table of Contents
1. Why Excel Users Should Learn Python/Pandas
2. Pandas DataFrames & Excel Spreadsheets
3. How to Create a Dataframe
- Creating a dataframe by reading an Excel/CSV file
- Creating a dataframe with arrays
- Creating a dataframe with a dictionary
Tại sao người dùng Excel nên học Python/Pandas

Các tác vụ như làm sạch dữ liệu, chuẩn hóa dữ liệu, trực quan hóa và phân tích thống kê có thể được thực hiện trên cả Excel và Pandas. Điều đó nói rằng, Pandas có một số lợi ích lớn hơn Excel. Đến tên một vài

  • Giới hạn theo kích thước. Excel có thể xử lý khoảng 1 triệu hàng, trong khi Python có thể xử lý hàng triệu triệu hàng [giới hạn là về sức mạnh tính toán của PC]
  • Chuyển đổi dữ liệu phức tạp. Tính toán sử dụng nhiều bộ nhớ trong Excel có thể làm hỏng sổ làm việc. Python có thể xử lý các tính toán phức tạp mà không gặp vấn đề lớn nào
  • tự động hóa. Excel không được thiết kế để tự động hóa các tác vụ. Bạn có thể tạo macro hoặc sử dụng VBA để đơn giản hóa một số tác vụ, nhưng đó là giới hạn. Tuy nhiên, Python có thể vượt xa điều đó với hàng trăm thư viện miễn phí có sẵn
  • Khả năng đa nền tảng. Trên Excel, bạn có thể tìm thấy một số điểm không tương thích giữa các công thức trong Windows và macOS. Điều này cũng xảy ra khi chia sẻ tệp Excel với những người không sử dụng tiếng Anh làm ngôn ngữ mặc định trên phiên bản Microsoft Excel của họ. Ngược lại, mã Python vẫn giữ nguyên bất kể hệ điều hành hay ngôn ngữ được đặt trên máy tính

Trước khi chỉ cho bạn cách thay thế Excel bằng Pandas [tạo bảng tổng hợp, trực quan hóa, v.v.], tôi sẽ giải thích cho bạn các khái niệm cốt lõi của Pandas. Xuyên suốt hướng dẫn này, tôi sẽ đề cập đến Excel để cung cấp một số ví dụ và so sánh nó với Pandas. Excel là bảng tính phổ biến nhất, vì vậy một số phép loại suy sẽ giúp bạn nắm bắt các khái niệm Pandas nhanh chóng

Bắt đầu nào

Pandas DataFrames sang bảng tính Excel

Hai cấu trúc dữ liệu chính trong Pandas là chuỗi và khung dữ liệu. Đầu tiên là mảng 1 chiều, trong khi thứ hai là mảng 2 chiều

Hình ảnh của tác giả

Trong Pandas, chúng tôi chủ yếu làm việc với các khung dữ liệu. Khung dữ liệu Pandas tương đương với bảng tính Excel. Pandas dataframes - giống như bảng tính Excel - có 2 chiều hoặc trục

Một khung dữ liệu có các hàng và cột [còn được gọi là chuỗi]. Trên đầu khung dữ liệu, bạn sẽ thấy tên của các cột và ở phía bên trái, có chỉ mục. Theo mặc định, chỉ mục trong Pandas bắt đầu bằng 0

Giao điểm của một hàng và một cột được gọi là giá trị dữ liệu hoặc đơn giản là dữ liệu. Chúng ta có thể lưu trữ các loại dữ liệu khác nhau như số nguyên, chuỗi, boolean, v.v.

Đây là hình ảnh của khung dữ liệu hiển thị các tiểu bang của Hoa Kỳ được xếp hạng theo dân số. Tôi sẽ chỉ cho bạn mã để tạo một khung dữ liệu như thế này sau, nhưng bây giờ hãy phân tích khung dữ liệu này

Hình ảnh của tác giả

Tên cột [tiểu bang, dân số và bưu chính] còn được gọi là đối tượng địa lý, trong khi mỗi giá trị hàng được gọi là quan sát. Chúng ta có thể nói rằng có 3 tính năng và 4 quan sát

Hãy nhớ rằng một cột phải có cùng loại dữ liệu. Trong ví dụ của chúng tôi, các cột statespostal chỉ chứa các chuỗi, trong khi cột dân số chỉ chứa các số nguyên. Chúng tôi có thể gặp lỗi khi cố gắng chèn các loại dữ liệu khác nhau vào một cột, vì vậy hãy tránh làm điều này

Tóm lại, đây là bản dịch thuật ngữ giữa Pandas và Excel

Cho đến nay, chúng ta chưa nói nhiều về các ô trống, nhưng thật tốt khi bạn biết rằng trong Python, dữ liệu bị thiếu được biểu thị bằng

import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp
0, viết tắt của “Không phải là số”. Bất cứ khi nào có một giá trị trống trong khung dữ liệu, bạn sẽ thấy
import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp
0

Cách tạo một khung dữ liệu

Có nhiều cách để tạo một khung dữ liệu. Chúng ta có thể tạo một khung dữ liệu bằng cách đọc tệp Excel/CSV, sử dụng mảng và cả từ điển

Nhưng trước khi tạo một khung dữ liệu, hãy đảm bảo rằng bạn đã cài đặt Python và Pandas. Trong trường hợp bạn chưa quen với Python, bạn có thể cài đặt nó bằng cách xem video này

Để cài đặt Pandas, hãy chạy lệnh

import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp
2trên thiết bị đầu cuối hoặc dấu nhắc lệnh. Trong trường hợp bạn có Jupyter Notebook, bạn có thể cài đặt nó từ một ô mã bằng cách chạy
import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp
3

Tạo khung dữ liệu bằng cách đọc tệp Excel/CSV

Đây chắc chắn là cách dễ nhất để tạo một khung dữ liệu trong Pandas. Chúng ta chỉ cần nhập pandas, sử dụng phương thức read_csv[] và viết tên của tệp Excel/CSV trong ngoặc đơn

Hãy đọc một tệp CSV chứa dữ liệu về GDP của các quốc gia trên thế giới [Bạn có thể tìm thấy tệp này tại liên kết này]

import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp

Trong đoạn mã trên, chúng tôi đã đổi tên gấu trúc thành “pd. ” Đây chỉ là quy ước đặt tên cho gấu trúc. Sau khi chạy đoạn mã trên, bạn sẽ thấy khung dữ liệu sau

Hình ảnh của tác giả

Đó là tất cả những gì bạn cần để tạo một khung dữ liệu. Bây giờ bạn có thể bắt đầu tạo bảng tổng hợp từ khung dữ liệu này bằng cách xem video hướng dẫn của tôi bên dưới

Tạo một khung dữ liệu với các mảng

Để tạo một khung dữ liệu với các mảng, trước tiên chúng ta cần nhập Numpy. Hãy nhập thư viện này và tạo một mảng với các số ngẫu nhiên

import numpy as np
data = np.array[[[1, 4], [2, 5], [3, 6]]]

Điều đó nói rằng, nếu bạn chưa cảm thấy thoải mái khi làm việc với Numpy, bạn có thể tạo các mảng giống nhau bằng cách sử dụng ký hiệu danh sách. Kết quả sẽ giống nhau khi tạo khung dữ liệu trong bước tiếp theo

data = [[1, 4], [2, 5], [3, 6]]

Để tạo một khung dữ liệu, chúng tôi nhập gấu trúc và sử dụng phương thức

import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp
4. Bên trong dấu ngoặc đơn, chúng ta có thể thêm các đối số
import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp
5 và
import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp
6 để gán tên

import pandas as pd
df = pd.DataFrame[data, index=['row1', 'row2', 'row3'],
columns=['col1', 'col2']]

import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp
7 là tên tiêu chuẩn cho một khung dữ liệu. Nếu chúng tôi in đối tượng
import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp
7 này, chúng tôi sẽ nhận được như sau

Hình ảnh của tác giả

Tạo một khung dữ liệu với một từ điển

Chúng tôi cũng có thể tạo một khung dữ liệu từ một từ điển. Đây là lựa chọn yêu thích của tôi vì từ điển cho phép chúng tôi tổ chức dữ liệu hợp lý. Như bạn có thể nhớ, một từ điển được tạo thành từ một khóa và một giá trị. Chúng ta có thể đặt danh sách làm giá trị dữ liệu và khóa làm tên của cột

Hãy tạo khung dữ liệu dân số mà chúng ta đã thấy trước khi sử dụng từ điển. Đầu tiên, chúng ta tạo 2 danh sách. bang và dân số

# data used for the example [stored in lists]
states = ["California", "Texas", "Florida", "New York"]
population = [39613493, 29730311, 21944577, 19299981]

Bây giờ, chúng tôi tạo một từ điển đặt các chuỗi_______1_______9 và

import numpy as np
data = np.array[[[1, 4], [2, 5], [3, 6]]]
0 làm khóa và các danh sách được tạo trước đó làm giá trị dữ liệu

# Storing lists within a dictionary
dict_states = {'States': states, 'Population': population}

Sau khi từ điển được tạo, việc tạo một khung dữ liệu cũng dễ dàng như sử dụng phương pháp

import pandas as pd
df_gdp = pd.read_csv['gdp.csv']
df_gdp
4, nhưng lần này chúng ta không cần chỉ định đối số cột vì nó đã được chỉ định trong các khóa

df_population = pd.DataFrame[dict_states]

Nếu bạn in

import numpy as np
data = np.array[[[1, 4], [2, 5], [3, 6]]]
2, bạn sẽ nhận được khung dữ liệu này

Hình ảnh của tác giả

Tham gia danh sách email của tôi với hơn 3 nghìn người để nhận Python for Data Science Cheat Sheet mà tôi sử dụng trong tất cả các hướng dẫn của mình [PDF miễn phí]

Nếu bạn thích đọc những câu chuyện như thế này và muốn hỗ trợ tôi với tư cách là một nhà văn, hãy cân nhắc đăng ký để trở thành thành viên Medium. Đó là 5 đô la một tháng, cho phép bạn truy cập không giới hạn vào hàng nghìn hướng dẫn về Python và các bài báo về Khoa học dữ liệu. Nếu bạn đăng ký bằng liên kết của tôi, tôi sẽ kiếm được một khoản hoa hồng nhỏ mà bạn không phải trả thêm phí

Excel hay Python tốt hơn để phân tích dữ liệu?

Python được coi là công cụ phân tích dữ liệu hiệu quả hơn dành cho các phép tính phức tạp và khối lượng dữ liệu lớn. Tuy nhiên, nhìn chung Excel vẫn phổ biến hơn Python và được nhiều người sử dụng trong phân tích tài chính.

Python có hoạt động tốt với Excel không?

Tận dụng Python trong Excel bảng tính có thể là một cách tuyệt vời để nâng cao năng suất của bạn và loại bỏ nhu cầu nhập và xuất dữ liệu vào và ra khỏi Excel. Interactive worksheets can be developed using Python code in the same way as you might use VBA, but with all of the advantages of Python.

Bạn có thể sử dụng Python trong Excel thay vì VBA không?

Viết công cụ Excel bằng Python thay vì VBA và gọi mã của bạn trực tiếp từ bên trong Excel, e. g. thông qua một nút trên trang tính. Điều này cũng hoạt động tốt cho các ứng dụng web tạo mẫu [Windows & Mac].

Chủ Đề