Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan perintah ajaib
Perintah ajaib, atausihir, adalah perintah khusus yang dapat Anda jalankan di sel notebook. Sebagai contoh,%env
menunjukkan variabel lingkungan dalam sesi notebook. Athena mendukung fungsi ajaib di iPython 6.0.3.
Bagian ini menunjukkan beberapa perintah sihir kunci di Athena untuk Apache Spark.
-
Untuk melihat daftar perintah ajaib di Athena, jalankan perintah
%lsmagic
di sel notebook. -
Untuk informasi tentang menggunakan sihir untuk membuat grafik di notebook Athena, lihatMagics untuk membuat grafik data.
-
Untuk informasi tentang perintah ajaib tambahan, lihatPerintah ajaib bawaan
dalam dokumentasi IPython.
catatan
Saat ini,%pip
perintah gagal saat dieksekusi. Ini adalah masalah yang diketahui.
Sihir sel
Sihir yang ditulis pada beberapa baris didahului oleh tanda persen ganda (%%
) dan disebutfungsi sihir selatausihir sel.
%%sql
Sihir sel ini memungkinkan untuk menjalankan pernyataan SQL secara langsung tanpa harus menghiasnya dengan pernyataan Spark SQL. Perintah ini juga menampilkan output dengan memanggil secara implisit.show()
pada dataframe yang dikembalikan.
Yang%%sql
perintah auto memotong output kolom dengan lebar 20 karakter. Saat ini, pengaturan ini tidak dapat dikonfigurasi. Untuk mengatasi batasan ini, gunakan sintaks lengkap berikut dan ubah parametershow
metode yang sesuai.
spark.sql("""
YOUR_SQL
""").show(n=number
, truncate=number
, vertical=bool
)
-
n
int
, opsional. Jumlah baris untuk ditampilkan. -
memotong—
bool
atauint
, opsional - Jikatrue
, memotong string lebih dari 20 karakter. Ketika diatur ke angka yang lebih besar dari 1, memotong string panjang dengan panjang yang ditentukan dan sel sejajar kanan. -
vertikal—
bool
, opsional. Jikatrue
, mencetak baris keluaran secara vertikal (satu baris per nilai kolom).
Garis Magics
Sihir yang berada pada satu baris didahului oleh tanda persen (%
) dan disebutfungsi sihir garisatausihir garis.
%bantuan
Menampilkan deskripsi dari perintah ajaib yang tersedia.
%list_session
Daftar sesi yang terkait dengan notebook. Informasi untuk setiap sesi mencakup ID sesi, status sesi, dan tanggal dan waktu sesi dimulai dan berakhir.
%session_id
Mengambil ID sesi saat ini.
%set_log_level
Set atau me-reset logger untuk menggunakan tingkat log yang ditentukan. Nilai yang mungkin adalahDEBUG
,ERROR
,FATAL
,INFO
, danWARN
atauWARNING
. Nilai harus huruf besar dan tidak boleh dilampirkan dalam tanda kutip tunggal atau ganda.
%status
Menjelaskan sesi saat ini. Outputnya meliputi ID sesi, status sesi, nama workgroup,PySparkversi mesin, dan waktu mulai sesi. Perintah ajaib ini membutuhkan sesi aktif untuk mengambil rincian sesi.
Berikut ini adalah nilai yang mungkin untuk status:
MENCIPTAKAN— Sesi sedang dimulai, termasuk memperoleh sumber daya.
DIBUAT— Sesi telah dimulai.
MENGANGGUR— Sesi ini dapat menerima perhitungan.
SIBUK- Sesi ini memproses tugas lain dan tidak dapat menerima perhitungan.
MENGAKHIRI— Sesi sedang dalam proses mematikan.
MENGAKHIRI- Sesi dan sumber dayanya tidak lagi berjalan.
TERDEGRADASI— Sesi ini tidak memiliki koordinator yang sehat.
GAGAL- Karena kegagalan, sesi dan sumber dayanya tidak lagi berjalan.
Magics untuk membuat grafik data
Sihir garis di bagian ini mengkhususkan diri dalam rendering data untuk jenis data tertentu atau dalam hubungannya dengan perpustakaan grafik.
%tabel
Anda dapat menggunakan%table
perintah ajaib untuk menampilkan data dataframe dalam format tabel.
Contoh berikut membuat dataframe dengan dua kolom dan tiga baris data, kemudian menampilkan data dalam format tabel.
%matplot
Matplotlib%matplot
perintah ajaib untuk membuat grafik setelah Anda mengimpor perpustakaan matplotlib ke dalam sel notebook.
Contoh berikut mengimpor perpustakaan matplotlib, menciptakan satu set x dan y koordinat, dan kemudian menggunakan penggunaan%matplot
perintah sihir untuk membuat grafik poin.
import matplotlib.pyplot as plt x=[3,4,5,6,7,8,9,10,11,12] y= [9,16,25,36,49,64,81,100,121,144] plt.plot(x,y) %matplot plt
Menggunakan perpustakaan matplotlib dan seaborn bersama-sama
Seaborn%matplot
perintah ajaib untuk membuat data seaborn.
Contoh berikut menggunakan kedua pustaka matplotlib dan seaborn untuk membuat grafik batang sederhana.
import matplotlib.pyplot as plt import seaborn as sns x = ['A', 'B', 'C'] y = [1, 5, 3] sns.barplot(x, y) %matplot plt
%plotal
Plotly%ploty
perintah sihir untuk membuat data ploty.
Contoh berikut menggunakanStringIo
from io import StringIO csvString = """ Date,AAPL.Open,AAPL.High,AAPL.Low,AAPL.Close,AAPL.Volume,AAPL.Adjusted,dn,mavg,up,direction 2015-02-17,127.489998,128.880005,126.919998,127.830002,63152400,122.905254,106.7410523,117.9276669,129.1142814,Increasing 2015-02-18,127.629997,128.779999,127.449997,128.720001,44891700,123.760965,107.842423,118.9403335,130.0382439,Increasing 2015-02-19,128.479996,129.029999,128.330002,128.449997,37362400,123.501363,108.8942449,119.8891668,130.8840887,Decreasing 2015-02-20,128.619995,129.5,128.050003,129.5,48948400,124.510914,109.7854494,120.7635001,131.7415509,Increasing 2015-02-23,130.020004,133,129.660004,133,70974100,127.876074,110.3725162,121.7201668,133.0678174,Increasing 2015-02-24,132.940002,133.600006,131.169998,132.169998,69228100,127.078049,111.0948689,122.6648335,134.2347981,Decreasing 2015-02-25,131.559998,131.600006,128.149994,128.789993,74711700,123.828261,113.2119183,123.6296667,134.0474151,Decreasing 2015-02-26,128.789993,130.869995,126.610001,130.419998,91287500,125.395469,114.1652991,124.2823333,134.3993674,Increasing 2015-02-27,130,130.570007,128.240005,128.460007,62014800,123.510987,114.9668484,124.8426669,134.7184854,Decreasing 2015-03-02,129.25,130.279999,128.300003,129.089996,48096700,124.116706,115.8770904,125.4036668,134.9302432,Decreasing 2015-03-03,128.960007,129.520004,128.089996,129.360001,37816300,124.376308,116.9535132,125.9551669,134.9568205,Increasing 2015-03-04,129.100006,129.559998,128.320007,128.539993,31666300,123.587892,118.0874253,126.4730002,134.8585751,Decreasing 2015-03-05,128.580002,128.75,125.760002,126.410004,56517100,121.539962,119.1048311,126.848667,134.5925029,Decreasing 2015-03-06,128.399994,129.369995,126.260002,126.599998,72842100,121.722637,120.190797,127.2288335,134.26687,Decreasing 2015-03-09,127.959999,129.570007,125.059998,127.139999,88528500,122.241834,121.6289771,127.631167,133.6333568,Decreasing 2015-03-10,126.410004,127.220001,123.800003,124.510002,68856600,119.71316,123.1164763,127.9235004,132.7305246,Decreasing """ csvStringIO = StringIO(csvString) from io import StringIO import plotly.graph_objects as go import pandas as pd from datetime import datetime df = pd.read_csv(csvStringIO) fig = go.Figure(data=[go.Candlestick(x=df['Date'], open=df['AAPL.Open'], high=df['AAPL.High'], low=df['AAPL.Low'], close=df['AAPL.Close'])]) %plotly fig