Các tổ chức và doanh nghiệp lớn thường lưu trữ dữ liệu trong bảng tính và yêu cầu giao diện để nhập dữ liệu này vào các ứng dụng web của họ. Ý tưởng chung là tải lên tệp, đọc nội dung của nó và lưu trữ nó trong các tệp hoặc cơ sở dữ liệu mà ứng dụng web sử dụng. Các tổ chức cũng có thể cần xuất dữ liệu từ một ứng dụng web. Ví dụ, họ có thể cần xuất khẩu các lớp của tất cả học sinh trong một lớp. Một lần nữa, bảng tính là phương tiện ưa thích.
Trong bài đăng này, chúng tôi sẽ thảo luận về các cách khác nhau để xử lý các tệp này và phân tích chúng để lấy thông tin cần thiết bằng Python.
Một bảng tính bảng tính nhanh
Trước khi phân tích bảng tính, bạn phải hiểu cách chúng cấu trúc. Một tệp bảng tính là một tập hợp các tờ và mỗi tờ là một tập hợp các ô dữ liệu được đặt trong một lưới, tương tự như một bảng. Trong một tờ, một ô dữ liệu được xác định bởi hai giá trị: số hàng và số cột của nó.
Chẳng hạn, trong ảnh chụp màn hình ở trên, bảng tính chỉ chứa một tờ, trên tờ Sheet Sheet1. Tế bào Hồi 2A 2A tương ứng với hàng thứ hai và cột đầu tiên. Giá trị của ô 2a là 1.
Mặc dù các chương trình có GUI gán các chữ cái cho tên của các cột, khi chúng tôi phân tích dữ liệu, chúng tôi sẽ bắt đầu số hàng và số cột từ 0. Điều đó có nghĩa là, ô 2a sẽ tương ứng với [1, 0], 4b đến [1,3] , 3c đến [2, 2], v.v.
Thiết lập môi trường Python
Chúng tôi sẽ sử dụng Python 3 để đọc và viết bảng tính. Để đọc và viết các tệp XLSX, bạn cần cài đặt mô -đun Pandas. Bạn có thể làm như vậy thông qua một trong những trình cài đặt Python:
import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
8 hoặc import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
9. Pandas sử dụng mô -đun import sys
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
0 để đọc các tệp mới [.xlsx] và các mô -đun import sys
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
1 để đọc bảng tính di sản [tệp .xls]. Cả hai import sys
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
0 và import sys
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
1 này đều được cài đặt dưới dạng phụ thuộc khi bạn cài đặt Pandas:pip3 install pandas
Để đọc và viết các tệp CSV, bạn cần mô-đun
import sys
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
4, được cài đặt sẵn với Python. Bạn cũng có thể đọc các tệp CSV thông qua gấu trúc.Đọc bảng tính
Nếu bạn có một tệp và bạn muốn phân tích dữ liệu trong đó, bạn cần thực hiện các phần sau theo thứ tự này:
- Nhập mô -đun
5import sys workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
- Mở tệp bảng tính [hoặc sổ làm việc]
- Chọn một tờ
- Trích xuất các giá trị của các ô dữ liệu cụ thể
Mở tệp bảng tính
Trước tiên, hãy mở một tập tin trong Python. Để theo dõi bạn có thể sử dụng bảng tính mẫu sau, lịch sự của việc học tập:
import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
Chính quyền | Canada | Carretera | Không có | 1618.5 | 3 | 20 | 32370.0 | 0.0 | 32370.0 | 16185.0 | 16185.0 | 2014-01-01 | 1 | tháng Giêng | 2014 |
Chính quyền | Canada | Carretera | Không có | 1321.0 | 3 | 20 | 26420.0 | 0.0 | 26420.0 | 13210.0 | 13210.0 | 2014-01-01 | 1 | tháng Giêng | 2014 |
nước Đức | Mid -Market | Carretera | Không có | 2178.0 | 3 | 15 | 32670.0 | 0.0 | 32670.0 | 21780.0 | 10890.0 | 2014-01-01 | 6 | tháng Giêng | 2014 |
nước Đức | Canada | Carretera | Không có | 888.0 | 3 | 15 | 13320.0 | 0.0 | 13320.0 | 8880.0 | 4440.0 | 2014-01-01 | 6 | tháng Giêng | 2014 |
nước Đức | Mid -Market | Carretera | Không có | 2470.0 | 3 | 15 | 37050.0 | 0.0 | 37050.0 | 24700.0 | 12350.0 | 2014-01-01 | 6 | tháng Giêng | 2014 |
nước Đức
Mid -Market
import sys
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
Pháp
workbook = pd.read_excel['~/Desktop/import-export-data.xlsx', usecols = 'A:E']
workbook.head[]
Chính quyền | Canada | Carretera | Không có | 1618.5 |
Chính quyền | Canada | Carretera | Không có | 1321.0 |
nước Đức | Mid -Market | Carretera | Không có | 2178.0 |
nước Đức | Canada | Carretera | Không có | 888.0 |
nước Đức | Mid -Market | Carretera | Không có | 2470.0 |
2014-01-01
tháng Giêng
nước Đức
# Read the sheet with the name 'Sheet1'
worksheet = pd.read_excel['sample-xlsx-file-for-testing.xlsx', sheet_name = 'Sheet1']
# Read the 1st sheet in the file
worksheet = pd.read_excel['sample-xlsx-file-for-testing.xlsx', sheet_name = 0]
Mid -Market
# Read the first two sheets and a sheet with the name 'Sheet 3'
worksheets = pd.read_excel['~/Desktop/import-export-data.xlsx', sheet_name = [0, 1, 'Sheet 3']]
Pháp
2014-06-01
import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
# Print the 1st value of the Product column
print[workbook['Product'].iloc[0]]
=> Carretera
Tháng sáu
print[workbook['Product'].loc[0]]
=> Carretera
Bạn có thể truy vấn bộ dữ liệu của mình sau khi nó được tải vào một khung dữ liệu với các hàm sẵn có trong gấu trúc. Dưới đây, một bài viết về khám phá các giá trị của gấu trúc DataFrame của bạn.
Tạo bảng tính
Quy trình công việc để tạo bảng tính tương tự như phần trước.
- Nhập mô -đun
5import sys workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
- Lưu dữ liệu vào sổ làm việc
- Tạo một tờ trong sổ làm việc
- Thêm kiểu dáng cho các ô trong sổ làm việc
Tạo một tệp mới
Để tạo một tệp mới, trước tiên chúng tôi cần một DataFrame. Hãy để lại tái tạo tờ demo từ đầu bài viết:
import pandas as pd
name = ['John', 'Mary', 'Sherlock']
age = [11, 12, 13]
df = pd.DataFrame[{ 'Name': name, 'Age': age }]
df.index.name = 'ID'
Sau đó, bạn có thể tạo một tệp bảng tính mới bằng cách gọi hàm to_excel [] trên dataFrame, chỉ định tên của tệp nó sẽ lưu như:
import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
0Bạn cũng có thể mở cùng một tệp bằng hàm
workbook = pd.read_excel['~/Desktop/import-export-data.xlsx', usecols = 'A:E']
workbook.head[]
6.Thêm tờ
Bạn có thể lưu DataFrame của mình dưới dạng một tờ nhất định trong sổ làm việc bằng đối số
import sys
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
9. Giá trị mặc định của đối số này là workbook = pd.read_excel['~/Desktop/import-export-data.xlsx', usecols = 'A:E']
workbook.head[]
8:import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
1Thêm tùy chọn trong khi lưu bảng tính của bạn
Bạn có thể sử dụng lớp Excelwriter để có nhiều tùy chọn hơn trong khi lưu vào bảng tính của bạn. Nếu bạn muốn lưu nhiều khung dữ liệu vào cùng một tệp, bạn có thể sử dụng cú pháp sau:
import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
2Để nối DataFrame vào bảng tính hiện có, hãy sử dụng đối số
workbook = pd.read_excel['~/Desktop/import-export-data.xlsx', usecols = 'A:E']
workbook.head[]
9. Lưu ý rằng chế độ phụ thuộc chỉ được hỗ trợ khi bạn chỉ định động cơ là import sys
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
0:import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
3Ngoài ra, sử dụng
# Read the sheet with the name 'Sheet1'
worksheet = pd.read_excel['sample-xlsx-file-for-testing.xlsx', sheet_name = 'Sheet1']
1 và # Read the sheet with the name 'Sheet1'
worksheet = pd.read_excel['sample-xlsx-file-for-testing.xlsx', sheet_name = 'Sheet1']
2 để đặt các giá trị cho các giá trị ngày và thời gian:import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
4Đọc các bảng tính Legacy [.xls]
Bạn có thể đọc bảng tính Legacy với tiện ích mở rộng
# Read the sheet with the name 'Sheet1'
worksheet = pd.read_excel['sample-xlsx-file-for-testing.xlsx', sheet_name = 'Sheet1']
3 bằng cách sử dụng cùng một cú pháp trong gấu trúc:import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
5Trong khi bạn sử dụng cùng một hàm
workbook = pd.read_excel['~/Desktop/import-export-data.xlsx', usecols = 'A:E']
workbook.head[]
6, Pandas sử dụng công cụ import sys
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
1 để đọc nó. Bạn có thể đọc và viết bảng tính di sản bằng cách sử dụng cùng một cú pháp mà chúng ta đã thảo luận trước đó trong hướng dẫn này.Tóm tắt nhanh các tệp CSV
CSV là viết tắt của các giá trị được phân tách bằng dấu phẩy [hoặc đôi khi được phân tách bằng ký tự nếu dấu phân cách được sử dụng là một số ký tự khác với dấu phẩy] và tên này khá tự giải thích. Một tệp CSV điển hình trông giống như sau:
import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
6Bạn có thể chuyển đổi bảng tính thành các tệp CSV để dễ dàng phân tích cú pháp. Các tệp CSV có thể được phân tích dễ dàng bằng cách sử dụng mô -đun
import sys
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding[]]
4 trong Python, ngoài Pandas:import pandas as pd
workbook = pd.read_excel['sample-xlsx-file-for-testing.xlsx']
workbook.head[]
7Sự kết luận
Như tôi đã đề cập trước đó, việc tạo và phân tích bảng tính là không thể tránh khỏi khi bạn làm việc với các ứng dụng web khổng lồ. Do đó, sự quen thuộc với các thư viện phân tích cú pháp chỉ có thể giúp bạn khi có nhu cầu.
Bạn sử dụng ngôn ngữ kịch bản nào để xử lý bảng tính? Python có bất kỳ thư viện nào khác cho mục đích này mà bạn thích không? Hãy thoải mái đánh tôi trên Twitter.