Condividi tramite


Come leggere e scrivere dati con Pandas in Microsoft Fabric

I notebook di Microsoft Fabric supportano l'interazione senza interruzioni con i dati di Lakehouse usando Pandas, la libreria Python più diffusa per l'esplorazione e l'elaborazione dei dati. All'interno di un notebook, è possibile leggere i dati provenienti da e riscrivere i dati nelle risorse Lakehouse in diversi formati di file. Questa guida fornisce esempi di codice che consentono di iniziare a usare il proprio notebook.

Prerequisiti

Caricare i dati del lakehouse in un notebook

Dopo aver collegato un Lakehouse al notebook di Microsoft Fabric, è possibile esplorare i dati archiviati senza uscire dalla pagina e leggerli nel notebook, in pochi passaggi. La selezione di qualsiasi opzione del file Lakehouse consente di "Caricare i dati" in un DataFrame Spark o Pandas. È anche possibile copiare il percorso ABFS completo del file o un percorso relativo descrittivo.

Screenshot che mostra le opzioni per caricare i dati in un DataFrame Pandas.

La selezione di una delle richieste "Carica dati" genera una cella di codice per caricare il file in un DataFrame nel notebook.

Screenshot che mostra una cella di codice aggiunta al notebook.

Convertire DataFrame Spark in un DataFrame Pandas

Per riferimento, questo comando mostra come convertire un DataFrame Spark in un DataFrame Pandas:

# Replace "spark_df" with the name of your own Spark DataFrame
pandas_df = spark_df.toPandas() 

Lettura e scrittura di vari formati di file

Nota

La modifica della versione di un pacchetto specifico potrebbe potenzialmente interrompere altri pacchetti che dipendono da esso. Ad esempio, il downgrade azure-storage-blob potrebbe causare problemi con Pandas e varie altre librerie che si basano su Pandas, tra cui mssparkutils, fsspec_wrappere notebookutils. È possibile visualizzare l'elenco dei pacchetti preinstallati e delle relative versioni per ogni runtime qui.

Questi esempi di codice descrivono le operazioni Pandas per leggere e scrivere vari formati di file.

Nota

È necessario sostituire i percorsi dei file in questi esempi di codice. Pandas supporta entrambi i percorsi relativi, come illustrato di seguito e i percorsi ABFS completi. I percorsi di entrambi i tipi possono essere recuperati e copiati dall'interfaccia in base al passaggio precedente.

Leggere i dati da un file CSV

import pandas as pd

# Read a CSV file from your Lakehouse into a Pandas DataFrame
# Replace LAKEHOUSE_PATH and FILENAME with your own values
df = pd.read_csv("/LAKEHOUSE_PATH/Files/FILENAME.csv")
display(df)

Scrivere i dati come file CSV

import pandas as pd 

# Write a Pandas DataFrame into a CSV file in your Lakehouse
# Replace LAKEHOUSE_PATH and FILENAME with your own values
df.to_csv("/LAKEHOUSE_PATH/Files/FILENAME.csv") 

Leggere dati da un file Parquet

import pandas as pd 
 
# Read a Parquet file from your Lakehouse into a Pandas DataFrame
# Replace LAKEHOUSE_PATH and FILENAME with your own values
df = pd.read_parquet("/LAKEHOUSE_PATH/Files/FILENAME.parquet") 
display(df)

Scrivere dati come un file Parquet

import pandas as pd 
 
# Write a Pandas DataFrame into a Parquet file in your Lakehouse
# Replace LAKEHOUSE_PATH and FILENAME with your own values
df.to_parquet("/LAKEHOUSE_PATH/Files/FILENAME.parquet") 

Importare dati da un file di Excel

import pandas as pd 
 
# Read an Excel file from your Lakehouse into a Pandas DataFrame
# Replace LAKEHOUSE_PATH and FILENAME with your own values. Also need to add correct filepath after Files/ if file is placed in different folders
# if using default lakehouse that attached to the notebook use the code to replace below: df = pandas.read_excel("/lakehouse/default/Files/FILENAME.xlsx") 
df = pandas.read_excel("/LAKEHOUSE_PATH/Files/FILENAME.xlsx") 
display(df) 

Scrivere dati come file di Excel

import pandas as pd 

# Write a Pandas DataFrame into an Excel file in your Lakehouse
# Replace LAKEHOUSE_PATH and FILENAME with your own values
df.to_excel("/LAKEHOUSE_PATH/Files/FILENAME.xlsx") 

Leggere i dati da un file JSON

import pandas as pd 
 
# Read a JSON file from your Lakehouse into a Pandas DataFrame
# Replace LAKEHOUSE_PATH and FILENAME with your own values
df = pandas.read_json("/LAKEHOUSE_PATH/Files/FILENAME.json") 
display(df) 

Scrivere i dati come file JSON

import pandas as pd 
 
# Write a Pandas DataFrame into a JSON file in your Lakehouse
# Replace LAKEHOUSE_PATH and FILENAME with your own values
df.to_json("/LAKEHOUSE_PATH/Files/FILENAME.json")