Dela via


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:

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å Ny ikon 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.

  1. 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ärdet table_name med ett valfritt tabellnamn. Du sparar babynamndata i den här tabellen senare i den här artikeln.

  2. 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.

  1. 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 .

  2. 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 .

  1. 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.

  2. 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.

  1. 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)
    
  2. Granska resultatet i tabellen.

  3. Bredvid fliken Tabell klickar du på + och klickar sedan på Visualisering.

  4. I visualiseringsredigeraren klickar du på Visualiseringstyp och kontrollerar att Word-molnet är markerat.

  5. Kontrollera att är First Name markerat i kolumnen Ord.

  6. I Frekvensgräns klickar du på 35.

    ordmolndiagram

  7. 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.

  1. 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)
    
  2. 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")
    
  3. 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.

  4. Klicka på tabellen för att visa tabellschemat på fliken Översikt .

  5. 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

Hämta notebook-fil

Scala

Importera data från CSV med Scala

Hämta notebook-fil

R

Importera data från CSV med R

Hämta notebook-fil

Nästa steg

Ytterligare resurser