NumPy는 Python에서 가장 인기 있는 라이브러리 중 하나입니다. 이는 데이터 과학, 머신 러닝 및 수치 분석을 지원합니다. 많은 개발자들이 대규모 데이터 세트를 신속하게 처리하기 위해 NumPy 배열(ndarray)을 사용합니다.
우리의 이전 블로그 게시물에서는 Excel 파일을 NumPy 배열로 변환하는 방법을 설명했습니다. 이 워크플로우는 분석을 위해 Python으로 외부 데이터를 가져와야 할 때 유용합니다. 하지만 반대의 경우는 어떻게 할까요? 많은 경우, NumPy에서 Excel로 Python 결과를 내보내어 보고 및 공유해야 할 필요가 있습니다. Excel은 비즈니스, 학교 및 조직에서 널리 사용되므로 협업에 이상적인 형식입니다.
이 가이드에서는 Python과 Aspose.Cells for Python via .NET을 사용하여 NumPy를 Excel로 변환하는 방법을 단계별로 보여줍니다.
NumPy를 Excel로 변환하는 이유는 무엇인가요?
NumPy는 Python 내에서 계산 및 분석에 완벽합니다. 그러나 우리는 종종 결과를 다른 사람들과 공유해야 합니다. 대부분의 비즈니스 사용자는 익숙하고 사용하기 쉬운 Excel을 선호합니다.
여기 NumPy를 Excel로 내보내야 할 수 있는 몇 가지 일반적인 이유가 있습니다:
- 데이터 보고: 처리된 데이터를 관리자를 위해 또는 클라이언트를 위해 엑셀 파일로 변환합니다.
- 협업: Python을 사용하지 않는 팀원과 결과 공유.
- 비즈니스 분석: NumPy 결과를 기존 Excel 보고서 및 대시보드와 결합합니다.
- 시각화: Excel 차트와 피벗 테이블을 사용하여 데이터를 더 의미 있게 만드세요.
Excel은 보편적인 형식입니다. 그것은 Python 개발자와 비기술 사용자의 간극을 연결합니다. NumPy 배열을 Excel로 내보내면 데이터를 접근 가능하고, 사용 가능하며, 이해하기 쉽게 만듭니다.
Python NumPy Excel 라이브러리
Aspose.Cells for Python은 강력한 스프레드시트 라이브러리입니다. Microsoft Excel을 설치하지 않고도 Excel 파일을 생성, 편집 및 처리할 수 있습니다. 이는 Python을 위한 최고의 Excel 라이브러리로, Excel 문서에 대한 완전한 제어가 필요한 개발자를 위해 설계되었습니다. 당신은:
- 다양한 형식으로 Excel 파일을 로드하고 저장합니다.
- 워크시트, 표, 범위 및 차트와 함께 작업하십시오.
- 파이썬 객체에서 데이터 가져오기 및 내보내기, NumPy 배열 포함.
- 대량의 데이터 세트를 높은 속도와 정확도로 처리합니다.
가장 좋은 점은 Aspose.Cells가 독립적으로 작동한다는 것입니다. Excel이나 다른 외부 소프트웨어가 필요하지 않습니다. Python 애플리케이션에서 원활하게 실행되며 과학적 작업 흐름과 잘 통합됩니다. 이는 NumPy 데이터를 Excel 파일로 변환하는 신뢰할 수 있는 솔루션이 됩니다.
NumPy를 Python에서 Excel로 변환하기
NumPy 배열을 Aspose.Cells를 사용하여 Excel로 변환하는 것은 간단합니다. 다음의 간단한 단계들을 따르세요:
1단계: .NET을 통해 Aspose.Cells for Python 설치
패키지를 pip를 사용하여 설치하세요:
pip install aspose-cells-python
2단계: 필요한 라이브러리 가져오기
당신의 Python 스크립트에서 NumPy와 Aspose.Cells를 임포트하세요:
import numpy as np
import aspose.cells as cells
3단계: 샘플 NumPy 배열 만들기
테스트를 위해 간단한 2D 배열을 만듭니다:
data = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
4단계: 사용자 정의 함수 정의 – insertnumpyarray
NumPy 값은 종종 numpy.int64, numpy.float32 또는 numpy.bool와 같은 유형으로 제공됩니다. 이러한 값들은 Excel 셀에 쓰기 전에 기본 Python 유형으로 변환해야 합니다.
아래의 헬퍼 함수는 이 변환을 수행하고 배열을 주어진 행과 열에서 시작하여 워크시트에 직접 삽입합니다:
# 사용자 정의 함수로 NumPy 배열을 워크시트에 삽입하기
def insert_numpy_array(sheet, ndarray, start_row=0, start_col=0):
rows, cols = ndarray.shape
for r in range(rows):
for c in range(cols):
value = ndarray[r, c]
# NumPy 타입을 기본 Python 타입으로 변환하기
if isinstance(value, (np.integer,)):
value = int(value)
elif isinstance(value, (np.floating,)):
value = float(value)
elif isinstance(value, (np.bool_,)):
value = bool(value)
elif isinstance(value, (np.str_, np.str_)):
value = str(value)
sheet.cells.get(start_row + r, start_col + c).put_value(value)
다음 섹션에서는 NumPy 데이터를 Workbook, Worksheet, ListObject, Range 및 Named Range에 삽입하는 방법을 시연할 것입니다. 다음 섹션의 코드 예제는 4단계: 사용자 정의 함수 섹션에 정의된 도우미 함수를 사용합니다.
NumPy ndarray를 Excel Workbook으로 변환하는 방법
NumPy 배열에서 몇 줄의 코드로 완전한 Excel 워크북을 생성할 수 있습니다. 이 방법은 데이터 분석 결과, 머신 러닝 출력 또는 표 형식의 데이터 세트를 전문적인 Excel 파일로 내보내고 싶을 때 완벽합니다.
다음 단계를 따라 NumPy ndarray를 Excel 워크북으로 변환하십시오:
- 데이터로 NumPy 2D 배열을 생성하세요.
Workbook클래스를 사용하여 새로운 비어있는 워크북을 초기화합니다.- 워크북에
worksheets.add()메서드를 사용하여 새 워크시트를 추가합니다. - 새 워크시트에 인덱스를 통해 접근하세요.
- NumPy 배열을 순회하여 워크시트 셀에 값을 삽입합니다.
- 워크북을 Excel 파일로 저장하세요.
다음 코드 예제는 NumPy ndarray를 Excel 워크북으로 변환하는 방법을 보여줍니다.
# NumPy 배열 생성하기
data = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
# NumPy 배열을 Excel 워크북으로 변환하기
workbook = cells.Workbook()
# 새 워크시트를 추가하세요.
new_sheet_index = workbook.worksheets.add()
worksheet = workbook.worksheets.get(new_sheet_index)
# 새 워크시트의 A1 셀에서 배열을 삽입하십시오.
insert_numpy_array(worksheet, data)
# Excel 파일로 통합 문서를 저장하십시오.
workbook.save("numpy_to_workbook.xlsx")

NumPy를 Excel 워크북으로 변환하는 방법
워크시트에 NumPy ndarray 삽입하기
때때로 이미 워크북이 있고, NumPy 데이터를 하나의 워크시트에만 삽입하고 싶을 수 있습니다.
다음 단계에 따라 NumPy ndarray를 워크시트로 변환합니다:
- 데이터로 NumPy 2D 배열을 생성하세요.
- 기존 Excel 파일을
Workbook클래스를 사용하여 로드합니다. - 데이터를 배치할 워크시트를 선택하세요.
- NumPy 배열을 반복하면서 값들을 워크시트 셀에 삽입합니다.
- 워크북을 Excel 파일로 저장하세요.
다음 코드 예제는 NumPy ndarray를 Excel 워크북의 특정 워크시트에 삽입하는 방법을 보여줍니다:
# NumPy 배열 생성하기
data = np.array([['City', 'Region', 'Store'], ['Chicago', 'Central', 3055], ['New York', 'East', 3036],
['Detroit', 'Central', 3074]])
# NumPy 배열을 Excel 워크북으로 변환하기
workbook = cells.Workbook("numpy_to_workbook.xlsx")
# 첫 번째 워크시트를 엑세스하세요.
sheet = workbook.worksheets.get(0)
# 워크시트에 NumPy 배열을 A1 셀부터 삽입합니다.
insert_numpy_array(sheet, data, 0, 0)
# Excel 파일로 통합 문서를 저장하십시오.
workbook.save("numpy_to_worksheet.xlsx")

NumPy ndarray를 워크시트로 변환하는 방법
NumPy ndarray를 ListObject (Excel 표)로 변환하는 방법
Excel 테이블(리스트 객체라고도 함)은 데이터를 구성하고 분석하는 강력한 방법입니다. Aspose.Cells를 사용하면 NumPy 배열을 리스트 객체로 직접 가져올 수 있습니다.
아래 단계를 따라 NumPy ndarray를 ListObject (Excel 표)로 변환하십시오:
- NumPy 2D 배열을 샘플 데이터로 생성하세요.
- 새 워크북을 초기화하고 첫 번째 워크시트에 접근합니다.
- 워크시트 셀에 NumPy 데이터를 도와주는 함수를 사용하여 삽입하세요.
- 배열 차원을 고려하여 시작 및 끝 행과 열을 정의합니다.
- 워크시트에
worksheet.listobjects.add()를 사용하여ListObject를 추가합니다. ListObject에 표시 이름을 지정합니다.- 워크북을 Excel 파일로 저장하십시오.
다음 코드 예제는 NumPy ndarray를 Excel 테이블로 변환하는 방법을 보여줍니다:
# NumPy 배열을 생성합니다.
data = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
# 새 Excel 통합 문서를 만드세요
workbook = cells.Workbook()
worksheet = workbook.worksheets.get(0)
# 워크시트에 NumPy 배열을 셀 A1부터 삽입합니다.
insert_numpy_array(worksheet, data)
# ListObject에 대한 범위를 정의합니다.
start_row, start_col = 0, 0
end_row, end_col = data.shape[0] - 1, data.shape[1] - 1
# NumPy 데이터로부터 ListObject (Excel 테이블) 추가
index = worksheet.list_objects.add(start_row, start_col, end_row, end_col, True)
list_object = worksheet.list_objects[index]
# 테이블의 표시 이름을 설정하세요.
list_object.display_name = "NumPyTable"
# 작업 책을 저장하세요.
workbook.save("numpy_to_listobject.xlsx")

NumPy ndarray를 ListObject(Excel 테이블)로 변환하는 방법
NumPy ndarray를 Range로 변환하세요.
때때로 NumPy 배열을 특정 셀 범위에 배치하고 싶을 수 있습니다. 이 방법은 미리 정의된 테이블 영역을 채우거나 선택된 셀 블록으로 분석 결과를 내보내는 것과 같이 워크시트 내에서 데이터의 정확한 배치가 필요할 때 이상적입니다.
다음 단계를 따라 NumPy ndarray를 Range로 변환하세요:
- 2D NumPy ndarray를 생성하세요.
- 새 워크북을 만들거나 기존 워크북을 엽니다.
- 대상 워크시트를 선택하십시오.
- ndarray 값을 반복하여 해당 Excel 셀에 삽입합니다.
cells.createrange(startcell, endcell)를 사용하여Range객체를 생성합니다.- 워크시트를 채워진 범위와 함께 Excel 파일로 내보내십시오.
다음 코드 예제는 NumPy ndarray를 Excel 범위에 삽입하는 방법을 보여줍니다:
import numpy as np
from datetime import datetime
from aspose.cells import Workbook, CellsHelper
# 셀에 NumPy 값을 안전하게 넣는 도우미
def put_cell_value(cells, raw_value, row, col):
cell = cells.get(row, col)
if isinstance(raw_value, (np.bool_,)):
value = bool(raw_value)
elif isinstance(raw_value, (np.integer,)):
value = int(raw_value)
elif isinstance(raw_value, (np.floating,)):
value = float(raw_value)
elif isinstance(raw_value, (np.datetime64,)):
# numpy datetime64 → Python datetime → Excel-compatible string
value = str(np.datetime_as_string(raw_value, unit='D'))
else:
value = raw_value
cell.put_value(value)
# NumPy 배열을 셀에 삽입하고 범위를 반환하는 함수
def numpy_to_range(cells, data, start_row=0, start_col=0):
rows, cols = data.shape
for i in range(rows):
for j in range(cols):
put_cell_value(cells, data[i, j], start_row + i, start_col + j)
# 시작/종료 셀을 기반으로 범위를 정의합니다.
start_cell = CellsHelper.cell_index_to_name(start_row, start_col)
end_cell = CellsHelper.cell_index_to_name(start_row + rows - 1, start_col + cols - 1)
return cells.create_range(start_cell, end_cell)
# 샘플 NumPy 배열을 생성합니다.
data = np.array([
['City', 'Region', 'Store', 'Date'],
['Chicago', 'Central', 3055, np.datetime64('2025-01-15')],
['New York', 'East', 3036, np.datetime64('2025-02-10')],
['Detroit', 'Central', 3074, np.datetime64('2025-03-05')]
])
# 새 워크북을 만들고 첫 번째 워크시트를 가져옵니다.
workbook = Workbook()
worksheet = workbook.worksheets.get(0)
cells = worksheet.cells
# 워크시트에 ndarray를 범위로 삽입
range_obj = numpy_to_range(cells, data, 0, 0)
print("Row count:", range_obj.row_count)
print("Column count:", range_obj.column_count)
# 워크북을 저장하십시오.
workbook.save("numpy_to_range.xlsx")

NumPy ndarray를 Range로 변환하는 방법
NumPy ndarray를 이름(이름이 지정된 범위)으로 변환하는 방법
때때로 Excel에서 특정 데이터 범위에 의미 있는 이름을 할당하고 싶을 수 있습니다. 이렇게 하면 수식, 차트 또는 다른 워크시트에서 데이터를 더 쉽게 참조할 수 있습니다. 이 섹션에서는 Python과 Aspose.Cells를 사용하여 NumPy를 Excel Named Range로 변환하는 방법을 보여줍니다. 명명된 범위를 생성함으로써 Excel 내부에서 NumPy 데이터를 더 효율적으로 처리할 수 있습니다.
다음 단계를 따라 Aspose.Cells를 사용하여 NumPy ndarray를 Excel의 이름이 지정된 범위로 변환하세요.
- Python에서 NumPy 배열을 생성합니다.
- 새로운 워크북을 만들고 대상 워크시트에 접근하십시오.
- 해당 배열을 반복하여 각 값을 워크시트에 삽입합니다.
- 수입된 데이터를 포괄하는 범위를 정의하십시오.
- 그 범위에 이름을 지정하세요.
- 워크북을 Excel 파일로 저장하세요.
다음 코드 예제는 NumPy ndarray를 Excel의 명명된 범위에 삽입하는 방법을 보여줍니다:
import numpy as np
import aspose.cells
from aspose.cells import Workbook, CellsHelper
# 워크시트 셀에 NumPy 데이터 삽입을 위한 도우미 함수
def put_cell_value(cells, raw_value, row, column):
if isinstance(raw_value, (np.bool_)):
value = bool(raw_value)
elif isinstance(raw_value, (np.integer)):
value = int(raw_value)
elif isinstance(raw_value, (np.floating)):
value = float(raw_value)
elif isinstance(raw_value, (np.datetime64)):
value = str(np.datetime_as_string(raw_value, unit='D'))
else:
value = str(raw_value)
cells.get(row, column).put_value(value)
def insert_ndarray_into_cells(cells, data, start_row, start_col):
row_count = data.shape[0]
col_count = data.shape[1]
for r in range(row_count):
for c in range(col_count):
put_cell_value(cells, data[r][c], start_row + r, start_col + c)
# 덮인 셀 영역을 반환하십시오.
end_row = start_row + row_count - 1
end_col = start_col + col_count - 1
return (start_row, start_col, end_row, end_col)
# ---------------------------
# Main Code
# ---------------------------
# 샘플 NumPy 배열을 생성하세요.
data = np.array([
['Product', 'Region', 'Sales'],
['Laptop', 'East', 1200],
['Phone', 'West', 950],
['Tablet', 'North', 740]
])
# 새로운 워크북을 생성하세요.
workbook = Workbook()
worksheet = workbook.worksheets.get(0)
cells = worksheet.cells
# (0,0)에서 시작하여 셀에 ndarray 삽입
(start_row, start_col, end_row, end_col) = insert_ndarray_into_cells(cells, data, 0, 0)
# Excel 셀 참조 가져오기
start_cell = CellsHelper.cell_index_to_name(start_row, start_col)
end_cell = CellsHelper.cell_index_to_name(end_row, end_col)
# 이 ndarray에 대해 이름이 지정된 범위를 만드세요.
idx = workbook.worksheets.names.add("SalesData") # returns index
named_range = workbook.worksheets.names[idx] # get the Name object
named_range.refers_to = f"={worksheet.name}!{start_cell}:{end_cell}"
# 워크북을 저장하세요.
workbook.save("numpy_to_named_range.xlsx")

NumPy ndarray를 이름(명명된 범위)으로 변환하는 방법
Aspose.Cells for Python 시작하기
이제 Aspose.Cells를 사용하여 NumPy 배열을 Excel로 변환하는 것이 얼마나 간단한지 보셨습니다. 이 라이브러리는 워크북, 워크시트, 테이블, 범위 및 명명된 범위에 대한 전체 제어를 제공합니다.
여기 당신의 이해를 향상시키기 위한 유용한 링크들이 있습니다:
무료 임시 라이센스를 받고 오늘 Aspose.Cells를 사용하여 Python 데이터를 Excel 워크플로와 완전히 호환되도록 시작하세요.
NumPy to Excel: FAQs
Q1: Aspose.Cells를 사용하기 위해 Microsoft Excel을 설치해야 하나요?
아니요. Aspose.Cells는 독립적으로 작동합니다. Excel이나 다른 소프트웨어를 설치할 필요가 없습니다.
Q2: Aspose.Cells는 대용량 NumPy 배열을 처리할 수 있나요?
네. 이 라이브러리는 대규모 데이터셋에 최적화되어 있으며 큰 배열에서도 잘 작동합니다.
Q3: 어떤 Excel 형식이 지원됩니까?
당신은 NumPy 데이터를 XLSX, XLS, CSV, ODS 및 많은 다른 스프레드시트 형식으로 저장할 수 있습니다.
Q4: NumPy 데이터를 내보낸 후 Excel 셀을 서식 지정할 수 있나요?
네. 스타일, 숫자 형식, 수식 등을 적용할 수 있으며, 차트나 피벗 테이블을 만들 수도 있습니다.
Q5: Aspose.Cells의 무료 버전이 있나요?
네. 무료 체험판을 다운로드하거나 테스트를 위한 임시 라이센스를 요청할 수 있습니다.
결론
NumPy는 Python에서 데이터 과학 및 수치 분석을 위한 핵심 도구이지만, 실제 보고서는 종종 Excel을 필요로 합니다. .NET을 통한 Aspose.Cells for Python를 사용하면 NumPy를 Excel로 변환하는 것이 원활하고 유연해집니다. 이 가이드에서는 다양한 방법을 탐구했습니다: NumPy 배열을 전체 통합 문서로 내보내기, 워크시트에 데이터 삽입, ListObject(Excel 표)로 형식 지정, 배열을 범위에 매핑 및 명명된 범위에 할당하기. 각 접근 방식은 고유한 목적을 제공합니다. NumPy의 강력한 기능과 Aspose.Cells의 유연성을 결합함으로써 Python 기반 분석에서 전문 Excel 보고서로 효율적으로 이동할 수 있으며, 데이터가 접근 가능하고 프레젠테이션 준비가 완료된 상태임을 보장할 수 있습니다.
질문이 있으시면, 우리 free support forum에서 자유롭게 질문해 주세요. 기꺼이 도와드리겠습니다.
