Преобразование Excel в Pandas DataFrame

Преобразование Excel в Pandas DataFrame через данные json

Вот пример фрагмента кода, демонстрирующий, как экспортировать данные Excel в pandas DataFrame через данные json с использованием Aspose.Cells для Python via .NET:

  1. Создать книгу и добавить некоторые значения.
  2. Экспортировать данные excel в JSON строку.
  3. Использовать библиотеку pandas для чтения данных JSON.
import pandas as pd
from aspose.cells.utility import JsonUtility, JsonLayoutOptions
from aspose.cells import Workbook, Worksheet, Cells, JsonSaveOptions
# Create a new Aspose.Cells Workbook
workbook = Workbook()
# Get the first worksheet
worksheet = workbook.worksheets[0]
# Get the cells
cells = worksheet.cells
# Add some values
cells.get("A1").value = "Name"
cells.get("B1").value = "Age"
cells.get("C1").value = "City"
cells.get("A2").value = "Alice"
cells.get("B2").value = 25
cells.get("C2").value = "New York"
cells.get("A3").value = "Bob"
cells.get("B3").value = 30
cells.get("C3").value = "San Francisco"
cells.get("A4").value = "Charlie"
cells.get("B4").value = 35
cells.get("C4").value = "Los Angeles"
jsonSaveOptions = JsonSaveOptions()
# Save data to json string
json = JsonUtility.export_range_to_json(cells.max_display_range, jsonSaveOptions);
print(json)
# Read json string using pandas
dfData = pd.read_json(json)
print(dfData)

Преобразуйте DataFrame Pandas непосредственно в Excel

Вот пример фрагмента кода, демонстрирующий, как экспортировать данные Excel в pandas DataFrame напрямую с использованием Aspose.Cells для Python via .NET:

  1. Создать книгу и добавить некоторые значения.
  2. Обойти данные в Excel и экспортировать данные в Pandas DataFrame с использованием Aspose.Cells для Python via .NET.
import pandas as pd
from aspose.cells import Workbook, Worksheet, Cells
# Create a new Aspose.Cells Workbook
workbook = Workbook()
# Get the first worksheet
worksheet = workbook.worksheets[0]
# Get the cells
cells = worksheet.cells
# Add some values
cells.get("A1").value = "Name"
cells.get("B1").value = "Age"
cells.get("C1").value = "City"
cells.get("A2").value = "Alice"
cells.get("B2").value = 25
cells.get("C2").value = "New York"
cells.get("A3").value = "Bob"
cells.get("B3").value = 30
cells.get("C3").value = "San Francisco"
cells.get("A4").value = "Charlie"
cells.get("B4").value = 35
cells.get("C4").value = "Los Angeles"
rowCount = cells.max_data_row
columnCount = cells.max_data_column
columnDatas = []
header_row = None
for row in cells.rows.__iter__():
if row is None:
continue
header_row = row
for cell in row.__iter__():
columnDatas.append(cell.value)
break
result = pd.DataFrame(columns=columnDatas, dtype=object)
row_index = 0
for row in cells.rows.__iter__():
if row is None:
continue
if row == header_row:
continue
row_values = []
for cell in row.__iter__():
row_values.append(cell.value)
# print(row_values)
result.loc[row_index] = row_values
row_index += 1
print(result)