Kom igång: Importera och visualisera CSV-data från en notebook-fil
Den här artikeln beskriver hur du använder en Azure Databricks-anteckningsbok för att importera data från en CSV-fil som innehåller babynamnsdata från health.data.ny.gov till Unity Catalog-volymen med python, scala och R. Du lär dig också att ändra ett kolumnnamn, visualisera data och spara i en tabell.
Krav
För att slutföra uppgifterna i den här artikeln måste du uppfylla följande krav:
- Unity Catalog måste vara aktiverat på arbetsytan. Information om hur du kommer igång med Unity Catalog finns i Konfigurera och hantera Unity Catalog.
- Du måste ha behörigheten
WRITE VOLUME
på en volym, behörighetenUSE SCHEMA
för det överordnade schemat och behörighetenUSE CATALOG
för den överordnade katalogen. - Du måste ha behörighet att använda en befintlig beräkningsresurs eller skapa en ny beräkningsresurs. Se Kom igång: Konfiguration av konto och arbetsyta eller kontakta Databricks-administratören.
Dricks
En slutförd notebook-fil för den här artikeln finns i Importera och visualisera dataanteckningsböcker.
Steg 1: Skapa en ny notebook-fil
Om du vill skapa en notebook-fil på arbetsytan klickar du på Nytt i sidofältet och klickar sedan på Notebook. En tom anteckningsbok öppnas på arbetsytan.
Mer information om hur du skapar och hanterar notebook-filer finns i Hantera notebook-filer.
Steg 2: Definiera variabler
I det här steget definierar du variabler som ska användas i den notebook-exempelanteckningsbok som du skapar i den här artikeln.
Kopiera och klistra in följande kod i den nya tomma notebook-cellen. Ersätt
<catalog-name>
,<schema-name>
och<volume-name>
med katalog-, schema- och volymnamnen för en Unity Catalog-volym. Du kan också ersätta värdettable_name
med ett valfritt tabellnamn. Du sparar babynamndata i den här tabellen senare i den här artikeln.Tryck
Shift+Enter
för att köra cellen och skapa en ny tom cell.Python
catalog = "<catalog_name>" schema = "<schema_name>" volume = "<volume_name>" download_url = "https://health.data.ny.gov/api/views/jxy9-yhdk/rows.csv" file_name = "baby_names.csv" table_name = "baby_names" path_volume = "/Volumes/" + catalog + "/" + schema + "/" + volume path_table = catalog + "." + schema print(path_table) # Show the complete path print(path_volume) # Show the complete path
Scala
val catalog = "<catalog_name>" val schema = "<schema_name>" val volume = "<volume_name>" val downloadUrl = "https://health.data.ny.gov/api/views/jxy9-yhdk/rows.csv" val fileName = "baby_names.csv" val tableName = "baby_names" val pathVolume = s"/Volumes/${catalog}/${schema}/${volume}" val pathTable = s"${catalog}.${schema}" print(pathVolume) // Show the complete path print(pathTable) // Show the complete path
R
catalog <- "<catalog_name>" schema <- "<schema_name>" volume <- "<volume_name>" download_url <- "https://health.data.ny.gov/api/views/jxy9-yhdk/rows.csv" file_name <- "baby_names.csv" table_name <- "baby_names" path_volume <- paste("/Volumes/", catalog, "/", schema, "/", volume, sep = "") path_table <- paste(catalog, ".", schema, sep = "") print(path_volume) # Show the complete path print(path_table) # Show the complete path
Steg 3: Importera CSV-fil
I det här steget importerar du en CSV-fil som innehåller babynamnsdata från health.data.ny.gov till Unity Catalog-volymen.
Kopiera och klistra in följande kod i den nya tomma notebook-cellen. Den här koden kopierar
rows.csv
filen från health.data.ny.gov till Unity Catalog-volymen med hjälp av kommandot Databricks dbutuils .Tryck
Shift+Enter
för att köra cellen och flytta sedan till nästa cell.Python
dbutils.fs.cp(f"{download_url}", f"{path_volume}" + "/" + f"{file_name}")
Scala
dbutils.fs.cp(downloadUrl, s"${pathVolume}/${fileName}")
R
dbutils.fs.cp(download_url, paste(path_volume, "/", file_name, sep = ""))
Steg 4: Läsa in CSV-data i en DataFrame
I det här steget skapar du en DataFrame med namnet df
från CSV-filen som du tidigare läste in i Unity Catalog-volymen med hjälp av metoden spark.read.csv .
Kopiera och klistra in följande kod i den nya tomma notebook-cellen. Den här koden läser in babynamnsdata i DataFrame
df
från CSV-filen.Tryck
Shift+Enter
för att köra cellen och flytta sedan till nästa cell.Python
df = spark.read.csv(f"{path_volume}/{file_name}", header=True, inferSchema=True, sep=",")
Scala
val df = spark.read .option("header", "true") .option("inferSchema", "true") .option("delimiter", ",") .csv(s"${pathVolume}/${fileName}")
R
# Load the SparkR package that is already preinstalled on the cluster. library(SparkR) df <- read.df(paste(path_volume, "/", file_name, sep=""), source="csv", header = TRUE, inferSchema = TRUE, delimiter = ",")
Du kan läsa in data från många filformat som stöds.
Steg 5: Visualisera data från notebook-filen
I det här steget använder display()
du metoden för att visa innehållet i DataFrame i en tabell i notebook-filen och sedan visualisera data i ett ordmolndiagram i notebook-filen.
Kopiera och klistra in följande kod i den nya tomma notebook-cellen och klicka sedan på Kör cell för att visa data i en tabell.
Python
display(df)
Scala
display(df)
R
display(df)
Granska resultatet i tabellen.
Bredvid fliken Tabell klickar du på + och klickar sedan på Visualisering.
I visualiseringsredigeraren klickar du på Visualiseringstyp och kontrollerar att Word-molnet är markerat.
Kontrollera att är
First Name
markerat i kolumnen Ord.I Frekvensgräns klickar du på
35
.Klicka på Spara.
Steg 6: Spara DataFrame i en tabell
Viktigt!
Om du vill spara dataramen i Unity Catalog måste du ha CREATE
tabellbehörigheter i katalogen och schemat. Information om behörigheter i Unity Catalog finns i Privilegier och skyddsbara objekt i Unity Catalog och Hantera privilegier i Unity Catalog.
Kopiera och klistra in följande kod i en tom notebook-cell. Den här koden ersätter ett blanksteg i kolumnnamnet. Specialtecken, till exempel blanksteg, tillåts inte i kolumnnamn. Den här koden använder Apache Spark-metoden
withColumnRenamed()
.Python
df = df.withColumnRenamed("First Name", "First_Name") df.printSchema
Scala
val dfRenamedColumn = df.withColumnRenamed("First Name", "First_Name") // when modifying a DataFrame in Scala, you must assign it to a new variable dfRenamedColumn.printSchema()
R
df <- withColumnRenamed(df, "First Name", "First_Name") printSchema(df)
Kopiera och klistra in följande kod i en tom notebook-cell. Den här koden sparar innehållet i DataFrame i en tabell i Unity Catalog med hjälp av den tabellnamnsvariabel som du definierade i början av den här artikeln.
Python
df.write.mode("overwrite").saveAsTable(f"{path_table}" + "." + f"{table_name}")
Scala
dfRenamedColumn.write.mode("overwrite").saveAsTable(s"${pathTable}.${tableName}")
R
saveAsTable(df, paste(path_table, ".", table_name), mode = "overwrite")
Kontrollera att tabellen har sparats genom att klicka på Katalog i det vänstra sidofältet för att öppna katalogutforskarens användargränssnitt. Öppna katalogen och sedan schemat för att kontrollera att tabellen visas.
Klicka på tabellen för att visa tabellschemat på fliken Översikt .
Klicka på Exempeldata för att visa 100 rader data från tabellen.
Importera och visualisera dataanteckningsböcker
Använd någon av följande notebook-filer för att utföra stegen i den här artikeln. Ersätt <catalog-name>
, <schema-name>
och <volume-name>
med katalog-, schema- och volymnamnen för en Unity Catalog-volym. Du kan också ersätta värdet table_name
med ett valfritt tabellnamn.
Python
Importera data från CSV med Python
Scala
Importera data från CSV med Scala
R
Importera data från CSV med R
Nästa steg
- Mer information om hur du lägger till ytterligare data i en befintlig tabell från en CSV-fil finns i Kom igång: Mata in och infoga ytterligare data.
- Information om hur du rensar och förbättrar data finns i Kom igång: Förbättra och rensa data.