Get elindult: 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 adatokat importálhat 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. Azt is megtanulhatja, hogyan módosíthatja a column nevét, vizualizálhatja az adatokat, és menthet egy table.
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 Unity Catalog. A Unity
használatának megkezdéséről további információkat a Unity beállításáról és kezeléséről szóló témakörben talál. - Rendelkeznie kell a kötet
WRITE VOLUME
jogosultságával, a szülő schemaUSE SCHEMA
jogosultságával, valamint a szülő catalogUSE CATALOG
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. Tekintse meg a Get kezdő lépéseit az Azure Databricks-vel, vagy forduljon a Databricks rendszergazdához.
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. Cserélje le a
<catalog-name>
,<schema-name>
és<volume-name>
elemeket a catalog, schemaés a kötetnevek elemekre a Unity Catalog köteten. Ha szeretné, cserélje le atable_name
értéket egy table névre az Ön választása szerint. A jelen cikk későbbi részében fogod a babanévadatokat erre a table-ra 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 babanevekkel kapcsolatos adatokat tartalmaz a health.data.ny.gov webhelyről a Unity Catalog kötetbe.
Másolja és illessze be a következő kódot az új üres jegyzetfüzetcellába. Ez a programkód a
rows.csv
fájlt a health.data.ny.gov-ról a Unity Catalog kötetbe másolja a Databricks dbutuils parancs segítségével.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 egy df
nevű DataFrame-et hoz létre abból a CSV-fájlból, amelyet korábban betöltött a Unity Catalog kötetbe a spark.read.csv metódus használatával.
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()
metódussal jeleníti meg a DataFrame tartalmát egy table a jegyzetfüzetben, majd megjeleníti az adatokat egy felhőalapú szódiagramon a jegyzetfüzetben.
Másolja és illessze be a következő kódot az új üres jegyzetfüzetcellába, majd kattintson a Cella futtatása elemre az adatok tablevaló megjelenítéséhez.
Python
display(df)
Scala
display(df)
R
display(df)
Tekintse át az eredményeket a table.
A Table lap mellett kattintson a +, majd a Vizualizációparancsra.
A vizualizációszerkesztőben kattintson a Vizualizáció típusa elemre, és ellenőrizze, hogy a Word-felhő van-e kiválasztva.
Ellenőrizze a Szavak columnközül, hogy a
First Name
van-e kiválasztva.A Gyakoriságok limitterületen kattintson a
35
gombra.Kattintson a Mentés gombra.
6. lépés: A DataFrame mentése egy table
Fontos
Ahhoz, hogy elmentse a DataFrame-t a Unity Catalog-ben, rendelkeznie kell CREATE
table jogosultságokkal a catalog és a schemafelett. A Unity
Másolja és illessze be a következő kódot egy üres jegyzetfüzetcellába. Ez a kód a column nevében lévő szóközt váltja fel. Speciális karakterek, például szóközök nem használhatók column nevekben. 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 DataFrame tartalmát a cikk elején definiált table névváltozóval a Unity Catalogtable-ba menti.
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 table mentésének ellenőrzéséhez győződjön meg róla, hogy a bal oldali oldalsávban kattint a Catalog elemre a Catalog Explorer felület megnyitásához. Nyissa meg először a catalog-t, majd a schema-t, hogy ellenőrizze, megjelenik-e a table.
Kattintson a table-ra, hogy megtekinthesse a tableschema-t az Áttekintés lapon.
Kattintson a Mintaadatok elemre a table100 adatsorának megtekintéséhez.
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. Cserélje le a Unity Catalog kötet <catalog-name>
, <schema-name>
és <volume-name>
elemeit a catalog, schemaés kötetnevekkel. Ha szeretné, cserélje le a table_name
értéket egy Ön által választott table né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
- További adatok hozzáadásához egy CSV-fájlból a meglévő table-ba, lásd Get elindítva: További adatok betöltése és insert.
- Az adatok tisztításáról és javításáról szóló további információkért lásd: Get started: Az adatok javítása és tisztítása.