> 백엔드 개발 > 파이썬 튜토리얼 > Pandas를 사용하여 대용량 Excel 파일에서 특정 워크시트만 효율적으로 로드하려면 어떻게 해야 합니까?

Pandas를 사용하여 대용량 Excel 파일에서 특정 워크시트만 효율적으로 로드하려면 어떻게 해야 합니까?

Barbara Streisand
풀어 주다: 2024-11-28 21:11:14
원래의
587명이 탐색했습니다.

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

Pandas를 사용하여 Excel 파일에서 특정 워크시트를 효율적으로 로드

데이터 처리를 위해 Pandas를 사용하는 경우 Excel 파일에서 특정 워크시트에 액세스해야 하는 경우가 종종 있습니다. . 그러나 pd.read_excel() 함수를 사용하면 필연적으로 전체 통합 문서가 메모리에 로드됩니다. 이는 대용량 Excel 파일을 처리할 때 성능 문제로 이어질 수 있습니다.

해결책: pd.ExcelFile 활용

이 문제를 극복하기 위해 Pandas는 pd.ExcelFile 클래스를 제공합니다. 이 클래스를 사용하면 Excel 파일을 한 번 로드하고 전체 파일을 다시 로드하지 않고도 필요에 따라 개별 워크시트에 액세스할 수 있습니다. 사용 방법은 다음과 같습니다.

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')
로그인 후 복사

주의 사항

pd.ExcelFile을 사용하면 전체 통합 문서의 중복 로드를 방지하지만 여전히 파일의 초기 로드가 필요하다는 점에 유의하는 것이 중요합니다. 이는 매우 큰 Excel 파일의 경우 메모리 사용량이 여전히 상당할 수 있음을 의미합니다.

여러 워크시트 로드 옵션

pd.read_excel() 함수는 여러 워크시트를 로드하는 옵션을 제공합니다. 다음과 같이 시트 이름 또는 색인 목록을 지정할 수 있습니다.

# Load multiple sheets as a dictionary
sheet_names = ['Sheet1', 'Sheet2']
multiple_sheets = pd.read_excel('path_to_file.xlsx', sheet_name=sheet_names)
로그인 후 복사

파일의 모든 시트를 사전으로 로드하려면 None을 sheet_name 인수로 사용합니다.

# Load all sheets as a dictionary
all_sheets = pd.read_excel('path_to_file.xlsx', sheet_name=None)
로그인 후 복사

위 내용은 Pandas를 사용하여 대용량 Excel 파일에서 특정 워크시트만 효율적으로 로드하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿