Első lépések: CSV-adatok importálása és vizualizációja jegyzetfüzetből
Ez a cikk bemutatja, hogy egy Azure Databricks-jegyzetfüzet használatával importálhat adatokat egy CSV-fájlból , amely babanévadatokat tartalmaz health.data.ny.gov a Unity Catalog-kötetbe Python, Scala és R használatával. Megtudhatja továbbá, hogyan módosíthatja az oszlopnevet, vizualizálhatja az adatokat, és menthet egy táblába.
Követelmények
A cikkben szereplő feladatok elvégzéséhez meg kell felelnie a következő követelményeknek:
- A munkaterületen engedélyezve kell lennie a Unity-katalógusnak . A Unity Catalog használatának megkezdéséről további információt a Unity Catalog beállítása és kezelése című témakörben talál.
- Rendelkeznie kell egy
WRITE VOLUME
kötet jogosultságával, aUSE SCHEMA
szülőséma jogosultságával és aUSE CATALOG
szülőkatalógus jogosultságával. - Rendelkeznie kell engedéllyel egy meglévő számítási erőforrás használatához vagy egy új számítási erőforrás létrehozásához. Lásd : Első lépések: Fiók és munkaterület beállítása vagy a Databricks-rendszergazda megtekintése.
Tipp.
A cikk befejezett jegyzetfüzeteit az adatjegyzetfüzetek importálása és vizualizációja című témakörben találja.
1. lépés: Új jegyzetfüzet létrehozása
Ha jegyzetfüzetet szeretne létrehozni a munkaterületen, kattintson az Oldalsáv Új gombjára, majd a Jegyzetfüzet elemre. Megnyílik egy üres jegyzetfüzet a munkaterületen.
A jegyzetfüzetek létrehozásáról és kezeléséről további információt a Jegyzetfüzetek kezelése című témakörben talál.
2. lépés: Változók definiálása
Ebben a lépésben a cikkben létrehozott példajegyzetfüzetben használt változókat definiálja.
Másolja és illessze be a következő kódot az új üres jegyzetfüzetcellába.
<schema-name>
<volume-name>
Cserélje le<catalog-name>
a unitykatalógus köteteinek katalógusát, sémáját és kötetnevét. Igény szerint cserélje le aztable_name
értéket egy tetszőleges táblanévre. A babanév adatait a cikk későbbi részében ebbe a táblába fogja menteni.Nyomja le
Shift+Enter
a cellát, és hozzon létre egy új üres cellát.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
3. lépés: CSV-fájl importálása
Ebben a lépésben importál egy CSV-fájlt, amely babanévadatokat tartalmaz health.data.ny.gov a Unity Catalog-kötetbe.
Másolja és illessze be a következő kódot az új üres jegyzetfüzetcellába. Ez a kód a Fájlt a
rows.csv
Databricks dbutuils paranccsal másolja a health.data.ny.gov a Unity Catalog-kötetbe.Nyomja le
Shift+Enter
a cellát, majd lépjen a következő cellára.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 = ""))
4. lépés: CSV-adatok betöltése DataFrame-be
Ebben a lépésben a spark.read.csv metódussal létrehoz egy DataFrame-et df
a korábban a Unity-katalógus kötetébe betöltött CSV-fájlból.
Másolja és illessze be a következő kódot az új üres jegyzetfüzetcellába. Ez a kód betölti a babanév adatait a DataFrame-be
df
a CSV-fájlból.Nyomja le
Shift+Enter
a cellát, majd lépjen a következő cellára.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 = ",")
Számos támogatott fájlformátumból tölthet be adatokat.
5. lépés: Adatok megjelenítése jegyzetfüzetből
Ebben a lépésben a display()
módszerrel megjelenítheti a DataFrame tartalmát a jegyzetfüzet egy táblájában, majd megjelenítheti az adatokat egy felhőalapú szódiagramon a jegyzetfüzetben.
Másolja és illessze be az alábbi kódot az új üres jegyzetfüzetcellába, majd a Futtatás gombra kattintva megjelenítheti az adatokat egy táblázatban.
Python
display(df)
Scala
display(df)
R
display(df)
Tekintse át az eredményeket a táblázatban.
Kattintson a Táblázat lap mellett a + Vizualizáció elemre.
A vizualizációszerkesztőben kattintson a Vizualizáció típusa elemre, és ellenőrizze, hogy a Word-felhő van-e kiválasztva.
A Szavak oszlopban ellenőrizze, hogy ki van-e
First Name
jelölve.A Frekvenciakorlátban kattintson a gombra
35
.Kattintson a Mentés gombra.
6. lépés: A DataFrame mentése táblába
Fontos
A DataFrame Unity-katalógusban való mentéséhez táblajogokkal kell rendelkeznie CREATE
a katalógusban és a sémában. A Unity Catalog engedélyekkel kapcsolatos információiért tekintse meg a Unity Catalog jogosultságait és biztonságos objektumait, valamint a Unity Catalog jogosultságainak kezelését ismertető témakört.
Másolja és illessze be a következő kódot egy üres jegyzetfüzetcellába. Ez a kód egy szóközt cserél le az oszlopnévben. A speciális karakterek, például a szóközök nem használhatók az oszlopnevekben. Ez a kód az Apache Spark
withColumnRenamed()
metódust használja.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)
Másolja és illessze be a következő kódot egy üres jegyzetfüzetcellába. Ez a kód a Cikk elején definiált táblanévváltozó használatával menti a DataFrame tartalmát a Unity Catalog egyik táblájába.
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")
A táblázat mentésének ellenőrzéséhez kattintson a katalógusra a bal oldali oldalsávon a Katalóguskezelő felhasználói felületének megnyitásához. Nyissa meg a katalógust, majd a sémát annak ellenőrzéséhez, hogy megjelenik-e a tábla.
A táblázatra kattintva megtekintheti a táblázat sémáját az Áttekintés lapon.
A Mintaadatok elemre kattintva 100 adatsort tekinthet meg a táblázatból.
Adatjegyzetfüzetek importálása és vizualizációja
A cikk lépéseinek végrehajtásához használja az alábbi jegyzetfüzetek egyikét. <schema-name>
<volume-name>
Cserélje le <catalog-name>
a unitykatalógus köteteinek katalógusát, sémáját és kötetnevét. Igény szerint cserélje le az table_name
értéket egy tetszőleges táblanévre.
Python
Adatok importálása CSV-ből a Python használatával
Scala
Adatok importálása CSV-ből a Scala használatával
R
Adatok importálása CSV-ből az R használatával
Következő lépések
- Ha további adatokat szeretne hozzáadni egy CSV-fájlból a meglévő táblához, olvassa el az Első lépések: Betöltés és további adatok beszúrása című témakört.
- Az adatok tisztításával és javításával kapcsolatos további információkért lásd : Első lépések: Adatok javítása és tisztítása.