Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Memuatkan Lembaran Kerja Khusus Sahaja dengan Cekap daripada Fail Excel Besar Menggunakan Panda?

Bagaimanakah Saya Boleh Memuatkan Lembaran Kerja Khusus Sahaja dengan Cekap daripada Fail Excel Besar Menggunakan Panda?

Barbara Streisand
Lepaskan: 2024-11-28 21:11:14
asal
587 orang telah melayarinya

How Can I Efficiently Load Only Specific Worksheets from a Large Excel File Using Pandas?

Memuatkan Lembaran Kerja Khusus dari Fail Excel dengan Panda dengan Cekap

Dalam konteks menggunakan Panda untuk pemprosesan data, selalunya perlu untuk mengakses lembaran kerja tertentu daripada fail Excel . Walau bagaimanapun, apabila menggunakan fungsi pd.read_excel(), keseluruhan buku kerja tidak dapat dielakkan dimuatkan ke dalam ingatan. Ini boleh membawa kepada isu prestasi apabila berurusan dengan fail Excel yang besar.

Penyelesaian: Menggunakan pd.ExcelFile

Untuk mengatasi cabaran ini, Pandas menyediakan kelas pd.ExcelFile. Kelas ini membolehkan anda memuatkan fail Excel sekali dan mengakses lembaran kerja individu seperti yang diperlukan tanpa memuatkan semula keseluruhan fail. Begini cara untuk menggunakannya:

import pandas as pd

# Read the Excel file using pd.ExcelFile
xls = pd.ExcelFile('path_to_file.xlsx')

# Load specific worksheets
df1 = pd.read_excel(xls, 'Sheet1')
df2 = pd.read_excel(xls, 'Sheet2')
Salin selepas log masuk

Kaveat

Adalah penting untuk ambil perhatian bahawa semasa menggunakan pd.ExcelFile mengelakkan beban berlebihan bagi keseluruhan buku kerja, ia masih memerlukan pemuatan awal fail. Ini bermakna bahawa untuk fail Excel yang sangat besar, penggunaan memori mungkin masih besar.

Pilihan untuk Memuatkan Berbilang Lembaran Kerja

Fungsi pd.read_excel() menyediakan pilihan untuk memuatkan berbilang lembaran kerja. Anda boleh menentukan senarai nama atau indeks helaian seperti berikut:

# Load multiple sheets as a dictionary
sheet_names = ['Sheet1', 'Sheet2']
multiple_sheets = pd.read_excel('path_to_file.xlsx', sheet_name=sheet_names)
Salin selepas log masuk

Untuk memuatkan semua helaian dalam fail sebagai kamus, gunakan Tiada sebagai argumen sheet_name:

# Load all sheets as a dictionary
all_sheets = pd.read_excel('path_to_file.xlsx', sheet_name=None)
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memuatkan Lembaran Kerja Khusus Sahaja dengan Cekap daripada Fail Excel Besar Menggunakan Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan