Excel-filer förblir ett av de mest populära formaten för att hantera strukturerad data. I Python är pandas DataFrame den föredragna strukturen för att organisera och analysera den datan effektivt. När Excel-data har konverterats till en DataFrame kan de sömlöst kombineras med databaser, API:er eller maskininlärningsmodeller för djupare analys och insikter. I denna artikel kommer vi att utforska praktiska sätt att konvertera Excel till pandas DataFrames med tydliga exempel för att hjälpa dig komma igång.

What is a Pandas DataFrame?

Ett DataFrame är en 2D-datastruktur som tillhandahålls av pandas-biblioteket. Det liknar ett Excel-kalkylblad med rader och kolumner. Varje kolumn kan hålla olika datatyper, såsom strängar, heltal eller flyttal.

DataFrames är idealiska för:

  • Importera och rensa data.
  • Performing mathematical operations.
  • Filtrering, gruppering och aggregering av data.
  • Exportera resultat till Excel, CSV eller databaser.

När du konverterar Excel-filer till DataFrames kan du omedelbart tillämpa kraftfulla pandas-operationer för analys.

Python-bibliotek för att konvertera Excel till Pandas DataFrame

Aspose.Cells for Python via .NET betraktas ofta som det bästa Python Excel-biblioteket för utvecklare som behöver mer än grundläggande hantering av kalkylblad. Det låter dig skapa, läsa, redigera och konvertera Excel-filer programmässigt utan att installera Microsoft Excel.

För DataFrame-konverteringar utmärker sig detta bibliotek eftersom det helt stödjer avancerade Excel-funktioner såsom formler, sammanfogade celler, diagram, pivottabeller och villkorsstyrd formatering. Det fungerar med flera format, inklusive XLS, XLSX, XLSB, ODS, CSV, och JSON.

När du använder Aspose.Cells för att överföra Excel-data till pandas får du en smidig konvertering till DataFrames med hög precision. Detta betyder att din Excel-struktur, formatering och värden förblir korrekta, medan pandas ger dig verktygen för att analysera och transformera dessa data effektivt.

Konvertera Excel till Pandas DataFrame

Du kan skapa ett nytt kalkylblad, generera data programmatiskt och konvertera Excel till en pandas DataFrame i Python. Detta ger dig full kontroll över strukturen av filen samtidigt som den görs redo för omedelbar analys i pandas.

Följ stegen nedan för att konvertera Excel till en Pandas DataFrame:

  1. Skapa en instans av klassen Workbook.
  2. Åtkomst till det första kalkylbladet och dess celler.
  3. Lägg till värden i kalkylbladets celler.
  4. Extract rows and headers.
  5. Konvertera den extraherade datan till en pandas DataFrame.

Följande exempel på Python-kod visar hur man konverterar Excel till en pandas DataFrame:

import pandas as pd
from aspose.cells import Workbook

# Steg 1: Skapa en ny Excel-arbetsbok med Aspose.Cells
wb = Workbook()

# Steg 2: Åtkomst till det första kalkylbladet
ws = wb.worksheets.get(0)

# Steg 3: Åtkomst till cellkollektionen i kalkylbladet
c = ws.cells

# Steg 4: Lägg till exempeldata i kalkylbladet
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"

# Steg 5: Hämta rubrik från den första dataraden
header_idx = c.min_data_row
columns = [cell.value for cell in c.rows[header_idx]]

# Steg 6: Samla de återstående raderna som data
data = [
    [cell.value for cell in row]
   for idx, row in enumerate(c.rows)
    if row and idx != header_idx
]

# Steg 7: Bygg DataFrame i ett steg
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

Konvertera en befintlig Excel-fil till en Pandas DataFrame

Om du redan har en Excel-fil kan du ladda den och konvertera Excel till en pandas DataFrame i Python direkt. Detta gör att du kan bevara den ursprungliga bladstrukturen samtidigt som du arbetar med data mer effektivt i pandas.

Följ stegen nedan för att läsa in och konvertera en befintlig Excel-fil till en Pandas DataFrame:

  1. Öppna en befintlig Excel-fil med hjälp av Workbook-klassen.
  2. Välj ett kalkylblad efter namn eller index.
  3. Läs alla rader och kolumner.
  4. Extract headers if available.
  5. Convert the result into a pandas DataFrame.

Följande Python-kod visar hur man konverterar en befintlig Excel-fil till en pandas DataFrame:

import pandas as pd
from aspose.cells import Workbook

# Steg 1: Ladda Excel-arbetsboken från fil
workbook = Workbook("PandasTest.xlsx")

# Steg 2: Välj arbetsbladet (efter index eller efter namn)
worksheet = workbook.worksheets.get("Sheet1")  # or workbook.worksheets[0]

# Steg 3: Hämta cellkollektionen från arbetsbladet
cells = worksheet.cells

# Steg 4: Beräkna antalet kolumner (0-baserad indexskillnad)
col_count = cells.max_data_column - cells.min_data_column

# Steg 5: Skapa en lista för att lagra raddata
output_data = []

# Steg 6: Hitta indexet för den första raden som har data
first_data_row_index = cells.min_data_row

# Steg 7: Iterera genom alla rader i arket
for row in cells.rows:
    if row is None:
        continue  # Skip uninitialized rows

    # Samla alla cellvärden för den aktuella raden
    row_data = [cell.value for cell in row]
    output_data.append(row_data)

# Steg 8: Förbered kolumnrubriker
columns = []
if True:  # Use header row
    row = cells.rows[first_data_row_index]
   for cell in row:
        columns.append(cell.value)
    # Ta bort rubrikrad från data
    output_data = output_data[1:]
else:
    # Om det inte finns någon rubrik, tilldela standard kolumnnamn
    columns = [f"Unnamed: {i}" for i in range(col_count + 1)]

# Steg 9: Konvertera datan till en pandas DataFrame
df = pd.DataFrame(output_data, columns=columns)

# Steg 10: Skriv ut DataFrame'n
print(df)
Konvertera en befintlig Excel-fil till en Pandas DataFrame

Exempelfil i Excel för att konvertera till en Pandas DataFrame.

Output

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

Konvertera Excel till Pandas via JSON

Exportera ditt Excel-område till JSON med JsonUtility.exportrangetojson, ladda sedan in det i Pandas. Se steg-för-steg-guiden: Convert Excel to Pandas DataFrame via JSON.

Konvertera Excel till Pandas via CSV

Konvertera din Excel-fil till CSV och ladda sedan upp den i Pandas. Följ steg-för-steg-guiden: Convert Excel to Pandas DataFrame via CSV.

Få en gratis licens

Du kan prova alla funktioner i Aspose.Cells för Python via .NET utan begränsningar genom att tillämpa en gratis temporär licens. Vänligen besök licenssidan och skaffa en gratis licens. Detta möjliggör för dig att utvärdera hela API:et, inklusive avancerade Excel-till-DataFrame-konverteringar.

Ytterligare gratis resurser

Utforska fler sätt att arbeta med Excel-filer i Python genom dessa resurser, som hjälper dig att gå bortom grundläggande konverteringar och tillämpa Aspose.Cells effektivt i verkliga projekt.

Slutsats

Att konvertera Excel-filer till pandas DataFrames blir enkelt och pålitligt med Aspose.Cells för Python via .NET. Oavsett om du skapar nya kalkylblad eller importerar befintliga, säkerställer biblioteket högfidelitetsdataöverföring och fullständigt formatstöd. Genom att kombinera flexibiliteten i pandas med den avancerade Excel-hanteringen av Aspose.Cells kan du förenkla datahanteringen och låsa upp kraftfull analys i Python.

Om du har några frågor, besök vårt free support forum, och vårt team kommer att vara glada att hjälpa dig.

Se också