Partilhar via


Primeiros passos: importe e visualize dados CSV de um bloco de anotações

Este artigo orienta você pelo uso de um bloco de anotações do Azure Databricks para importar dados de um arquivo CSV contendo dados de nome de bebê do health.data.ny.gov para o volume do Catálogo Unity usando Python, Scala e R. Você também aprende a modificar um nome de coluna, visualizar os dados e salvar em uma tabela.

Requisitos

Para concluir as tarefas neste artigo, você deve atender aos seguintes requisitos:

  • Seu espaço de trabalho deve ter o Unity Catalog habilitado. Para obter informações sobre como começar a usar o Unity Catalog, consulte Configurar e gerenciar o Unity Catalog.
  • Você deve ter o WRITE VOLUME privilégio em um volume, o USE SCHEMA privilégio no esquema pai e o USE CATALOG privilégio no catálogo pai.
  • Você deve ter permissão para usar um recurso de computação existente ou criar um novo recurso de computação. Consulte Introdução: Configuração de conta e espaço de trabalho ou consulte o administrador do Databricks.

Gorjeta

Para obter um bloco de anotações concluído para este artigo, consulte Importar e visualizar blocos de anotações de dados.

Etapa 1: Criar um novo bloco de anotações

Para criar um bloco de notas na sua área de trabalho, clique Novo ícone em Novo na barra lateral e, em seguida, clique em Bloco de Notas. Um bloco de anotações em branco é aberto no espaço de trabalho.

Para saber mais sobre como criar e gerir blocos de notas, consulte Gerir blocos de notas.

Etapa 2: Definir variáveis

Nesta etapa, você define variáveis para uso no bloco de anotações de exemplo criado neste artigo.

  1. Copie e cole o código a seguir na nova célula vazia do bloco de anotações. Substitua <catalog-name>, <schema-name>e <volume-name> pelos nomes de catálogo, esquema e volume de um volume do Catálogo Unity. Opcionalmente, substitua o table_name valor por um nome de tabela de sua escolha. Você salvará os dados do nome do bebê nesta tabela mais adiante neste artigo.

  2. Pressione Shift+Enter para executar a célula e criar uma nova célula em branco.

    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
    

Etapa 3: Importar arquivo CSV

Nesta etapa, você importa um arquivo CSV contendo dados de nome do bebê do health.data.ny.gov para o volume do Catálogo Unity.

  1. Copie e cole o código a seguir na nova célula vazia do bloco de anotações. Esse código copia o rows.csv arquivo do health.data.ny.gov para o volume do Catálogo Unity usando o comando Databricks dbutuils.

  2. Pressione Shift+Enter para executar a célula e, em seguida, vá para a próxima célula.

    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 = ""))
    

Etapa 4: Carregar dados CSV em um DataFrame

Nesta etapa, você cria um DataFrame nomeado df a partir do arquivo CSV que você carregou anteriormente no volume do Catálogo Unity usando o método spark.read.csv .

  1. Copie e cole o código a seguir na nova célula vazia do bloco de anotações. Esse código carrega dados de nome do bebê no DataFrame df a partir do arquivo CSV.

  2. Pressione Shift+Enter para executar a célula e, em seguida, vá para a próxima célula.

    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 = ",")
    

Você pode carregar dados de muitos formatos de arquivo suportados.

Etapa 5: visualizar dados do bloco de anotações

Nesta etapa, você usa o display() método para exibir o conteúdo do DataFrame em uma tabela no bloco de anotações e, em seguida, visualizar os dados em um gráfico de nuvem de palavras no bloco de anotações.

  1. Copie e cole o código a seguir na nova célula vazia do bloco de anotações e clique em Executar célula para exibir os dados em uma tabela.

    Python

    display(df)
    

    Scala

    display(df)
    

    R

    display(df)
    
  2. Analise os resultados na tabela.

  3. Ao lado da guia Tabela , clique em e, em + seguida, clique em Visualização.

  4. No editor de visualização, clique em Tipo de Visualização e verifique se a nuvem de palavras está selecionada.

  5. Na coluna Palavras, verifique se First Name está selecionado.

  6. Em Limite de frequências, clique em 35.

    Gráfico de nuvem de palavras

  7. Clique em Guardar.

Etapa 6: Salvar o DataFrame em uma tabela

Importante

Para salvar seu DataFrame no Unity Catalog, você deve ter CREATE privilégios de tabela no catálogo e no esquema. Para obter informações sobre permissões no Unity Catalog, consulte Privilégios e objetos protegíveis no Unity Catalog e Manage privileges in Unity Catalog.

  1. Copie e cole o código a seguir em uma célula vazia do bloco de anotações. Este código substitui um espaço no nome da coluna. Caracteres especiais, como espaços, não são permitidos em nomes de coluna. Este código usa o método Apache Spark 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. Copie e cole o código a seguir em uma célula vazia do bloco de anotações. Esse código salva o conteúdo do DataFrame em uma tabela no Unity Catalog usando a variável de nome de tabela que você definiu no início deste artigo.

    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. Para verificar se a tabela foi salva, clique em Catálogo na barra lateral esquerda para abrir a interface do usuário do Catalog Explorer. Abra o catálogo e, em seguida, o esquema para verificar se a tabela aparece.

  4. Clique na tabela para visualizar o esquema da tabela na guia Visão geral .

  5. Clique em Dados de Exemplo para exibir 100 linhas de dados da tabela.

Importar e visualizar blocos de anotações de dados

Use um dos seguintes blocos de anotações para executar as etapas neste artigo. Substitua <catalog-name>, <schema-name>e <volume-name> pelos nomes de catálogo, esquema e volume de um volume do Catálogo Unity. Opcionalmente, substitua o table_name valor por um nome de tabela de sua escolha.

Python

Importar dados de CSV usando Python

Obter o bloco de notas

Scala

Importar dados do CSV usando o Scala

Obter o bloco de notas

R

Importar dados do CSV usando R

Obter o bloco de notas

Próximos passos

Recursos adicionais