Merk
Tilgang til denne siden krever autorisasjon. Du kan prøve å logge på eller endre kataloger.
Tilgang til denne siden krever autorisasjon. Du kan prøve å endre kataloger.
Microsoft Fabric-notatblokker støtter sømløs interaksjon med Lakehouse-data ved hjelp av Pandas, det mest populære Python-biblioteket for datautforskning og -behandling. I en notatblokk kan du raskt lese data fra og skrive data tilbake til Lakehouse-ressursene dine i ulike filformater. Denne veiledningen inneholder kodeeksempler som hjelper deg med å komme i gang i din egen notatblokk.
Forutsetning
Få et Microsoft Fabric-abonnement. Eller registrer deg for en gratis prøveversjon av Microsoft Fabric.
Logg på Microsoft Fabric.
Bytt til Fabric ved å bruke erfaringsbryteren nederst til venstre på hjemmesiden din.
- Fullfør trinnene i Klargjøre systemet for datavitenskapsopplæringer for å opprette en ny notatblokk og knytte et Lakehouse til den. I denne artikkelen følger du fremgangsmåten for å opprette en ny notatblokk i stedet for å importere en eksisterende.
Bruk denne arbeidsflyten for å velge riktig mønster:
- For enkeltfiler i Lakehouse, les eller skriv dem med Pandas ved å bruke en sti under
Files. - For tabelllignende data i et Lakehouse, bruk Spark- og Delta-tabeller, og konverter deretter til Pandas kun når resultatet passer i notatboken din.
- Hvis dataene er store, oppbevar dem i Spark for filtrering, aggregering og transformasjon før du konverterer dem til en Pandas DataFrame.
Laste inn Lakehouse-data i en notatblokk
Merk
Du trenger noen data i Lakehouse for å følge trinnene i denne delen. Hvis du ikke har noen data, følger du fremgangsmåten i Last ned datasett og last opp til Lakehouse for å legge til denchurn.csv filen i Lakehouse.
Når du har festet en Lakehouse til Microsoft Fabric-notatboken din, kan du utforske lagrede data uten å forlate siden og kopiere filstien du trenger for notatbokkoden. I Lakehouse-utforskeren kan du enten bruke det genererte notatbokutsnittet til å laste en fil inn i en Spark- eller Pandas DataFrame, eller kopiere hele filens ABFS-sti. For standard Lakehouse knyttet til notatboken ser en typisk Files-sti ut som /lakehouse/default/Files/.... For andre Lakehouses, bruk ABFS-stien fra Lakehouse Explorer.
Ved å velge en fil i Lakehouse-utforskeren kan du generere kode som laster filen inn i en DataFrame i notatboken din.
Konvertere en Spark DataFrame til en Pandas DataFrame
Important
toPandas() laster hele Spark DataFrame inn i minnet. Bruk det kun til små til mellomstore resultatsett. Hvis datasettet ditt er stort, filtrer, aggreger eller sample det i Spark før du konverterer til Pandas.
For referanse viser denne kommandoen hvordan du konverterer en Spark DataFrame til en Pandas DataFrame:
# Replace "spark_df" with the name of your own Spark DataFrame
pandas_df = spark_df.toPandas()
Lese og skrive ulike filformater
Merk
Endring av versjonen av en bestemt pakke kan potensielt bryte andre pakker som avhenger av den. Nedgradering azure-storage-blob kan for eksempel føre til problemer med Pandas og ulike andre biblioteker som er avhengige Pandasav , inkludert mssparkutils, fsspec_wrapperog notebookutils.
Du kan vise listen over forhåndsinstallerte pakker og deres versjoner for hver kjøretid her.
Disse kodeeksemplene demonstrerer Pandas-operasjoner for å lese og skrive ulike filformater. Disse eksemplene er ikke ment å kjøres sekvensielt som i en opplæring, men i stedet kopieres og limes inn i din egen notatblokk etter behov.
Merk
Du må erstatte filstiene i disse kodeeksemplene med hele stien for filen i Lakehouse-en din. For standard Lakehouse knyttet til notatboken, bruk en sti som /lakehouse/default/Files/.... For andre Lakehouses, bruk ABFS-stien fra Lakehouse Explorer.
Lese data fra en CSV-fil
import pandas as pd
# Read a CSV file from your Lakehouse into a Pandas DataFrame
# For the default Lakehouse attached to the notebook, use the following path pattern:
df = pd.read_csv("/lakehouse/default/Files/FILENAME.csv")
# Verify that the file loaded successfully before continuing
print(df.head())
print(df.shape)
display(df)
Skrive data som en CSV-fil
import pandas as pd
# Write a Pandas DataFrame into a CSV file in your Lakehouse
# Replace FILENAME with your own value
df.to_csv("/lakehouse/default/Files/FILENAME.csv", index=False)
Lese data fra en parkettfil
import pandas as pd
# Read a Parquet file from your Lakehouse into a Pandas DataFrame
df = pd.read_parquet("/lakehouse/default/Files/FILENAME.parquet")
display(df)
Skrive data som en parquet-fil
import pandas as pd
# Write a Pandas DataFrame into a Parquet file in your Lakehouse
df.to_parquet("/lakehouse/default/Files/FILENAME.parquet")
Lese data fra en Excel-fil
import pandas as pd
# Read an Excel file from your Lakehouse into a Pandas DataFrame
# If the file is in a subfolder, add the appropriate folder after Files/
df = pd.read_excel("/lakehouse/default/Files/FILENAME.xlsx")
display(df)
Skrive data som en Excel-fil
import pandas as pd
# Write a Pandas DataFrame into an Excel file in your Lakehouse
df.to_excel("/lakehouse/default/Files/FILENAME.xlsx", index=False)
Lese data fra en JSON-fil
import pandas as pd
# Read a JSON file from your Lakehouse into a Pandas DataFrame
df = pd.read_json("/lakehouse/default/Files/FILENAME.json")
display(df)
Skrive data som en JSON-fil
import pandas as pd
# Write a Pandas DataFrame into a JSON file in your Lakehouse
df.to_json("/lakehouse/default/Files/FILENAME.json")
Arbeide med Delta-tabeller
Deltatabeller er standard tabellformat i Microsoft Fabric og lagres i Tabeller-delen av Lakehouse. Filer og tabeller er forskjellige lagringssteder i Fabric, og de bruker forskjellige tilgangsmønstre. For å jobbe med Delta-tabeller i Pandas, les først tabellen inn i en Spark DataFrame, og konverter deretter det filtrerte resultatet til en pandas DataFrame kun når det får plass i driverminnet.
Opprette en Delta-testtabell
Hvis du vil følge fremgangsmåten i denne delen, trenger du en Delta-tabell i Lakehouse. Følg fremgangsmåten i Last ned datasett og last opp til lakehouse for å legge til churn.csv filen i Lakehouse, og opprett deretter en testtabell fra churn.csv-filen ved å kjøre denne koden i notatblokken:
import pandas as pd
# Create a test Delta table from the churn.csv file
df = pd.read_csv("/lakehouse/default/Files/churn/raw/churn.csv")
spark_df = spark.createDataFrame(df)
spark_df.write.format("delta").mode("overwrite").saveAsTable("churn_table")
Dette steget lager en Delta-tabell kalt churn_table som du kan bruke for å teste følgende eksempler.
Lese data fra en Delta-tabell
# Read a Delta table from your Lakehouse into a pandas DataFrame
# This example uses the churn_table created above
spark_df = spark.read.table("churn_table")
pandas_df = spark_df.toPandas()
display(pandas_df)
Du kan også lese Delta-tabeller ved hjelp av Spark SQL-syntaks:
# Alternative method using Spark SQL
spark_df = spark.sql("SELECT * FROM churn_table")
pandas_df = spark_df.toPandas()
display(pandas_df)
Skrive pandas DataFrame til en Delta-tabell
# Convert pandas DataFrame to Spark DataFrame, then save as Delta table
# Replace TABLE_NAME with your desired table name
spark_df = spark.createDataFrame(pandas_df)
spark_df.write.format("delta").mode("overwrite").saveAsTable("TABLE_NAME")
Du kan også lagre til en bestemt bane i Tabeller-delen:
# Save to a specific path in the Tables section
spark_df = spark.createDataFrame(pandas_df)
spark_df.write.format("delta").mode("overwrite").save("Tables/TABLE_NAME")
Skrivemoduser for Delta-tabeller
Når du skriver til Delta-tabeller, kan du angi forskjellige moduser:
# Overwrite the entire table
spark_df.write.format("delta").mode("overwrite").saveAsTable("TABLE_NAME")
# Append new data to existing table
spark_df.write.format("delta").mode("append").saveAsTable("TABLE_NAME")
Merk
Deltatabeller som er opprettet i Tabeller-delen av Lakehouse, kan oppdages uten ytterligere registrerings- eller konfigurasjonstrinn, og kan spørres ved hjelp av Spark SQL. De vises også i Lakehouse-utforskergrensesnittet (du må kanskje oppdatere Lakehouse-utforskeren for å se nylige endringer).
Relatert innhold
- Bruke Data Wrangler til å rengjøre og klargjøre dataene
- Start ML-modeller for opplæring