Файли Excel залишаються одним з найпопулярніших форматів для управління структурованими даними. У Python структура pandas DataFrame є основним інструментом для організації та ефективного аналізу цих даних. Після перетворення в DataFrame дані Excel можна безперешкодно поєднувати з базами даних, API або моделями машинного навчання для глибшого аналізу та отримання корисних висновків. У цій статті ми розглянемо практичні способи перетворення Excel у DataFrame pandas з чіткими прикладами, щоб допомогти вам розпочати.

What is a Pandas DataFrame?

DataFrame - це 2D структура даних, що надається бібліотекою pandas. Вона схожа на електронну таблицю Excel з рядками та стовпцями. Кожен стовпець може містити різні типи даних, такі як рядки, цілі числа або дроби.

DataFrames є ідеальними для:

  • Імпорт та очищення даних.
  • Виконання математичних операцій.
  • Фільтрація, групування та агрегація даних.
  • Експорт результатів у Excel, CSV або бази даних.

Коли ви конвертуєте файли Excel у DataFrames, ви можете відразу застосовувати потужні операції pandas для аналізу.

Бібліотека Python для конвертації Excel у DataFrame Pandas

Aspose.Cells for Python via .NET часто вважається найкращою бібліотекою Python для Excel для розробників, яким потрібні можливості, що перевищують базову обробку електронних таблиць. Це дозволяє вам створювати, зчитувати, редагувати та конвертувати файли Excel програмно без встановлення Microsoft Excel.

Для перетворень DataFrame ця бібліотека блискуче працює, оскільки повністю підтримує розширені функції Excel, такі як формули, об’єднані клітини, діаграми, зведені таблиці та умовне форматування. Вона працює з кількома форматами, включаючи XLS, XLSX, XLSB, ODS, CSV та JSON.

Коли ви використовуєте Aspose.Cells для імпортування даних Excel в pandas, ви отримуєте плавне перетворення у DataFrames з високою точністю. Це означає, що ваша структура Excel, форматування та значення залишаються точними, тоді як pandas надає вам інструменти для ефективного аналізу та обробки цих даних.

Конвертувати Excel в Pandas DataFrame

Ви можете створити нову електронну таблицю, генерувати дані програмно і конвертувати Excel в pandas DataFrame в Python. Це дає вам повний контроль над структурою файлу, готуючи його до негайного аналізу в pandas.

Слідуйте інструкціям нижче, щоб конвертувати Excel у Pandas DataFrame:

  1. Створіть екземпляр класу Workbook.
  2. Доступ до першого аркуша та його клітин.
  3. Додайте значення до комірок аркуша.
  4. Extract rows and headers.
  5. Перетворіть вилучені дані в DataFrame pandas.

Наступний приклад коду на Python демонструє, як конвертувати Excel у pandas DataFrame:

import pandas as pd
from aspose.cells import Workbook

# Крок 1: Створіть нову книгу Excel, використовуючи Aspose.Cells
wb = Workbook()

# Крок 2: Доступ до першого аркуша
ws = wb.worksheets.get(0)

# Крок 3: Отримання колекції клітинок аркуша
c = ws.cells

# Крок 4: Додайте зразкові дані до аркуша
c.get("A1").value, c.get("B1").value, c.get("C1").value = "Name", "Age", "City"
c.get("A2").value, c.get("B2").value, c.get("C2").value = "Alice", 25, "New York"
c.get("A3").value, c.get("B3").value, c.get("C3").value = "Bob", 30, "San Francisco"
c.get("A4").value, c.get("B4").value, c.get("C4").value = "Charlie", 35, "Los Angeles"

# Крок 5: Отримайте заголовок з першого рядка даних
header_idx = c.min_data_row
columns = [cell.value for cell in c.rows[header_idx]]

# Крок 6: Зберіть залишкові рядки як дані
data = [
    [cell.value for cell in row]
   for idx, row in enumerate(c.rows)
    if row and idx != header_idx
]

# Крок 7: Створити DataFrame за один раз
df = pd.DataFrame(data, columns=columns)
print(df)

Output

      Name  Age           City
0    Alice   25       New York
1      Bob   30  San Francisco
2  Charlie   35    Los Angeles

Конвертуйте існуючий файл Excel у DataFrame Pandas

Якщо у вас вже є файл Excel, ви можете завантажити його та конвертувати Excel в DataFrame pandas у Python безпосередньо. Це дозволяє зберегти оригінальну структуру листа, працюючи з даними більш ефективно в pandas.

Слідуйте крокам нижче, щоб завантажити та конвертувати існуючий файл Excel у DataFrame Pandas:

  1. Відкрийте існуючий файл Excel за допомогою класу Workbook.
  2. Виберіть аркуш за назвою або індексом.
  3. Читайте всі рядки та стовпці.
  4. Extract headers if available.
  5. Перетворіть результат у pandas DataFrame.

Наступний код Python показує, як перетворити існуючий файл Excel у DataFrame pandas:

import pandas as pd
from aspose.cells import Workbook

# Крок 1: Завантажте робочу книгу Excel з файлу
workbook = Workbook("PandasTest.xlsx")

# Крок 2: Виберіть аркуш (за індексом або за назвою)
worksheet = workbook.worksheets.get("Sheet1")  # or workbook.worksheets[0]

# Крок 3: Отримайте колекцію осередків з робочого аркуша
cells = worksheet.cells

# Крок 4: Розрахуйте кількість стовпців (різниця індексів з нульовим початком)
col_count = cells.max_data_column - cells.min_data_column

# Крок 5: Створіть список для зберігання даних рядків
output_data = []

# Крок 6: Знайдіть індекс першого рядка, який має дані
first_data_row_index = cells.min_data_row

# Крок 7: Ітерація через всі рядки в аркуші
for row in cells.rows:
    if row is None:
        continue  # Skip uninitialized rows

    # Зберіть всі значення комірок для поточного рядка
    row_data = [cell.value for cell in row]
    output_data.append(row_data)

# Крок 8: Підготуйте заголовки стовпців
columns = []
if True:  # Use header row
    row = cells.rows[first_data_row_index]
   for cell in row:
        columns.append(cell.value)
    # Видалити рядок заголовка з даних
    output_data = output_data[1:]
else:
    # Якщо немає заголовка, призначте імена стовпців за замовчуванням.
    columns = [f"Unnamed: {i}" for i in range(col_count + 1)]

# Крок 9: Перетворіть дані у DataFrame pandas
df = pd.DataFrame(output_data, columns=columns)

# Крок 10: Виведіть DataFrame
print(df)
Перетворити існуючий файл Excel у DataFrame Pandas

Sample Excel file for converting into a Pandas DataFrame.

Output

   Product A  Product B Period
0         50        160     Q1
1        100         32     Q2
2        170         50     Q3
3        300         40     Q4

Конвертувати Excel до Pandas через JSON

Експортуйте ваш діапазон Excel у JSON за допомогою JsonUtility.exportrangetojson, а потім завантажте його в Pandas. Дивіться покрокове керівництво: Convert Excel to Pandas DataFrame via JSON.

Перетворення Excel в Pandas за допомогою CSV

Конвертуйте ваш файл Excel у формат CSV, а потім завантажте його в Pandas. Слідкуйте за покроковою інструкцією: Convert Excel to Pandas DataFrame via CSV.

Отримати безкоштовну ліцензію

Ви можете спробувати всі функції Aspose.Cells for Python через .NET без обмежень, застосувавши безкоштовну тимчасову ліцензію. Будь ласка, відвідайте license page і отримайте безкоштовну ліцензію. Це дозволяє вам оцінити повний API, включаючи розширені перетворення Excel у DataFrame.

Додаткові безкоштовні ресурси

Досліджуйте більше способів роботи з файлами Excel у Python через ці ресурси, які допоможуть вам вийти за межі базових перетворень і ефективно застосувати Aspose.Cells у реальних проектах.

Висновок

Перетворення файлів Excel у DataFrame pandas стає простим і надійним за допомогою Aspose.Cells for Python через .NET. Незалежно від того, чи ви створюєте нові електронні таблиці, чи імпортуєте існуючі, бібліотека забезпечує високу точність передачі даних та повну підтримку форматів. Поєднуючи гнучкість pandas з розширеним обробленням Excel від Aspose.Cells, ви можете спростити обробку даних і отримати потужний аналіз у Python.

Якщо у вас є які-небудь запитання, відвідайте наш безкоштовний форум підтримки, і наша команда буде рада допомогти вам.

Дивіться також