Excel soubory zůstávají jedním z nejpopulárnějších formátů pro správu strukturovaných dat. V Pythonu je pandas DataFrame preferovanou strukturou pro efektivní organizaci a analýzu těchto dat. Jakmile jsou data z Excelu převedena na DataFrame, mohou být bezproblémově kombinována s databázemi, API nebo modely strojového učení pro hlubší analýzu a poznatky. V tomto článku se podíváme na praktické způsoby, jak převést Excel na pandas DataFrames s jasnými příklady, které vám pomohou začít.

What is a Pandas DataFrame?

DataFrame je 2D datová struktura poskytovaná knihovnou pandas. Vypadá podobně jako tabulka v Excelu s řádky a sloupci. Každý sloupec může obsahovat různé typy dat, jako jsou řetězce, celá čísla nebo reálná čísla.

DataFrames jsou ideální pro:

  • Importování a čištění dat.
  • Provádění matematických operací.
  • Filtrování, seskupování a agregace dat.
  • Exportovat výsledky do Excelu, CSV nebo databází.

Když převedete soubory Excel na DataFrames, můžete okamžitě aplikovat silné operace pandas pro analýzu.

Python knihovna pro převod Excelu na Pandas DataFrame

Aspose.Cells for Python prostřednictvím .NET je často považována za nejlepší Python knihovnu pro Excel pro vývojáře, kteří potřebují více než základní manipulaci s tabulkami. Umožňuje vám programově vytvářet, číst, upravovat a převádět Excel soubory bez nutnosti instalovat Microsoft Excel.

Pro konverze DataFrame tato knihovna vyniká, protože plně podporuje pokročilé funkce Excelu, jako jsou vzorce, sloučené buňky, grafy, kontingenční tabulky a podmíněné formátování. Pracuje s více formáty, včetně XLS, XLSX, XLSB, ODS, CSV a JSON.

Když použijete Aspose.Cells pro přenos dat z Excelu do pandas, získáte hladký převod do DataFrames s vysokou věrností. To znamená, že vaše struktura, formátování a hodnoty v Excelu zůstávají přesné, zatímco pandas vám poskytuje nástroje k efektivní analýze a transformaci těchto dat.

Převést Excel na Pandas DataFrame

Můžete vytvořit nový tabulkový procesor, generovat data programově a převést Excel na pandas DataFrame v Pythonu. To vám dává plnou kontrolu nad strukturou souboru a připravuje ho k okamžité analýze v pandas.

Postupujte podle níže uvedených kroků pro převod Excelu na DataFrame Pandas:

  1. Vytvořte instanci třídy Workbook.
  2. Přístup k prvnímu listu a jeho buňkám.
  3. Přidejte hodnoty do buněk tabulky.
  4. Extract rows and headers.
  5. Převést extrahovaná data do pandas DataFrame.

Následující příklad kódu v Pythonu ukazuje, jak převést Excel na DataFrame pandas:

import pandas as pd
from aspose.cells import Workbook

# Krok 1: Vytvořte nový Excel sešit pomocí Aspose.Cells
wb = Workbook()

# Krok 2: Získejte přístup k prvnímu listu
ws = wb.worksheets.get(0)

# Krok 3: Získejte kolekci buněk ze sešitu
c = ws.cells

# Krok 4: Přidejte ukázková data do pracovního listu
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"

# Krok 5: Získejte záhlaví z prvního řádku dat
header_idx = c.min_data_row
columns = [cell.value for cell in c.rows[header_idx]]

# Krok 6: Shromážděte zbývající řádky jako data
data = [
    [cell.value for cell in row]
   for idx, row in enumerate(c.rows)
    if row and idx != header_idx
]

# Krok 7: Vytvoření DataFrame na jeden pokus
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

Převod existujícího souboru Excel na Pandas DataFrame

Pokud již máte soubor Excel, můžete jej načíst a přímo převést Excel na pandas DataFrame v Pythonu. To vám umožní zachovat původní strukturu listu, zatímco s daty pracujete efektivněji v pandas.

Postupujte podle následujících kroků pro načtení a převod existujícího souboru Excel do DataFrame Pandas:

  1. Otevřete existující soubor Excel pomocí třídy Workbook.
  2. Vyberte pracovní list podle názvu nebo indexu.
  3. Přečtěte si všechny řádky a sloupce.
  4. Extract headers if available.
  5. Convert the result into a pandas DataFrame.

Následující kód v Pythonu ukazuje, jak převést existující Excel soubor na pandas DataFrame:

import pandas as pd
from aspose.cells import Workbook

# Krok 1: Načtěte sešit Excel ze souboru
workbook = Workbook("PandasTest.xlsx")

# Krok 2: Vyberte pracovní list (podle indexu nebo podle názvu)
worksheet = workbook.worksheets.get("Sheet1")  # or workbook.worksheets[0]

# Krok 3: Získejte kolekci buněk z pracovního listu
cells = worksheet.cells

# Krok 4: Vypočítejte počet sloupců (rozdíl indexu založeného na 0)
col_count = cells.max_data_column - cells.min_data_column

# Krok 5: Vytvořte seznam pro uložení dat řádku
output_data = []

# Krok 6: Najděte index prvního řádku, který obsahuje data
first_data_row_index = cells.min_data_row

# Krok 7: Procházejte všechny řádky v tabulce
for row in cells.rows:
    if row is None:
        continue  # Skip uninitialized rows

    # Shromážděte všechny hodnoty buněk pro aktuální řádek
    row_data = [cell.value for cell in row]
    output_data.append(row_data)

# Krok 8: Připravte názvy sloupců
columns = []
if True:  # Use header row
    row = cells.rows[first_data_row_index]
   for cell in row:
        columns.append(cell.value)
    # Odstranit řádek hlavičky z dat
    output_data = output_data[1:]
else:
    # Pokud není záhlaví, přiřaďte výchozí názvy sloupců.
    columns = [f"Unnamed: {i}" for i in range(col_count + 1)]

# Krok 9: Převeďte data do pandas DataFrame
df = pd.DataFrame(output_data, columns=columns)

# Krok 10: Vytiskněte DataFrame
print(df)
Převod stávajícího souboru Excel na Pandas DataFrame

Ukázkový soubor Excel pro převod do DataFrame Pandas.

Output

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

Převod Excelu na Pandas prostřednictvím JSON

Exportujte svůj Excel rozsah do JSON pomocí JsonUtility.exportrangetojson, poté jej načtěte do Pandas. Podívejte se na podrobný návod: Convert Excel to Pandas DataFrame via JSON.

Převést Excel na Pandas přes CSV

Převeďte svůj Excel soubor na CSV a poté jej načtěte do Pandas. Postupujte podle krok za krokem: Convert Excel to Pandas DataFrame via CSV.

Získejte bezplatnou licenci

Můžete vyzkoušet všechny funkce Aspose.Cells for Python přes .NET bez omezení aplikováním bezplatné dočasné licence. Navštivte prosím license page a získejte bezplatnou licenci. To vám umožní vyhodnotit celý API, včetně pokročilých převodů Excel-to-DataFrame.

Další bezplatné zdroje

Prozkoumejte více způsobů, jak pracovat se soubory Excel v Pythonu prostřednictvím těchto zdrojů, které vám pomohou přesáhnout základní převody a efektivně aplikovat Aspose.Cells v reálných projektech.

Závěr

Převod Excel souborů na pandas DataFrames se stává jednoduchým a spolehlivým s Aspose.Cells for Python prostřednictvím .NET. Ať už vytváříte nové tabulky nebo importujete stávající, knihovna zajišťuje vysoce věrný přenos dat a plnou podporu formátů. Kombinací flexibility pandas s pokročilým zpracováním Excelu od Aspose.Cells můžete zjednodušit zpracování dat a odemknout silnou analýzu v Pythonu.

Pokud máte nějaké dotazy, navštivte naše free support forum, a náš tým vám rád pomůže.

See Also