"hint_desc","chapter_item_id","orders","hint_id"
New customer yang bertransaksi mengacu pada kapan transaksi pertama dilakukan,1794,1,1600
Transaksi pertama dapat diambil dengan menggunakan min(order_date),1794,2,1601
head(5),1719,1,2815
"Isi bagian […] dengan named vector cluster dan Nama. Segmen menggunakan format nama_vector <- c(…..). Urutan sangat penting, ikuti sesuai soal.",80,1,23
Copy paste kedua perintah pada praktek ke code editor dan jalankan.,86,1,26
"Buat variable Identitas.Cluster dan isi dengan function openRDS dengan format Identitas.Cluster <- openRDS(…), tampilkan dengan mengetikkan nama variable Identitas.Cluster di bawah perintah tersebut.",87,1,27
"<p>Lanjutkan dengan perintah <code>databaru &lt;- merge(databaru, Identitas.Cluster$Jenis.Kelamin)</code> dan <code>databaru &lt;- merge(databaru, Identitas.Cluster$Tipe.Residen)</code>. Perhatikan juga urutan sesuai dengan permintaan soal.</p>",88,1,28
"Letakkan which min dengan variable Identitas.Cluster dengan format Identitas.Cluster$Segmen.Pelanggan[which.min(..)),]",89,1,29
"Syntax penggunaan is.numeric adalah is.numeric(input). Jadi di kasus ini masukkan ""Jakarta"" sebagai pengganti input pada function tersebut.",12,1,31
"Ketik profil  <- c(nama <- ""Budi"", tempat_tinggal <- ""Jakarta"", tingkat_pendidikan <- ""S1"") pada code editor",16,1,34
Masukan perintah sesuai soal,1722,1,5004
"Soal cukup jelas, coba perhatikan contoh pada bagian Lesson.",382,1,8848
"Soal cukup jelas, modifikasi contoh pada bagian Lesson dengan input yang sesuai permintaan soal.",383,1,8849
"Ketikkan sesuai dengan apa yang diminta pada ""Lesson"" dan perhatikan urutannya!",960,1,201
Tambahkan pasangan aesthetic seperti dijelaskan pada teks pengantar.,196,1,8890
Soal cukup jelas.,207,1,8895
"",2773,1,8141
Masukan seperti yang ada di soal dan mendapatkan nilai min dari kolom pinalty,2787,1,8220
Filter nilai Min kolom pinalty dengan nilai dibawah 50000,2787,2,8221
"Yang ingin ditampilkan adalah --> data 
Lalu pada bagian dataframe disimpan dengan nama new_df",2826,1,8289
"Copy paste code pada Lesson ke dalam code editor, dan jalankan sehingga memunculkan grafik itu.",77,1,8935
"Pastikan kamu telah meng-create variabel polutan seperti yang dicontohkan, kemudian melakukan pengelompokkan (groupby) berdasarkan kolom 'country' dan menerapkan aggregasi mean dan std, serta mencetak 5 baris teratas masing-masingnya.",2225,1,9025
"Dataframe yang dikelompokkan dengan groupby memiliki syntax umum berupa
     [nama_dataframe].groupby([nama_kolom]).[nama_fungsi_aggregasi]
dengan
[nama_dataframe] --> nama variabel dataframe
[nama_kolom] --> nama atau nama-mama kolom dari dataframe untuk di-groupby
[nama_fungsi_aggregasi] --> nama fungsi aggregasi yang diaplikasikan",2225,2,9026
"Pastikan kamu telah
* mengambil data jika pada kolom province-nya adalah 'DKI Jakarta', 'Jawa Barat', 'Jawa Tengah', 'Jawa Timur', dan 'Yogyakarta' dan kemudian mencetak nama kolomnya
* mengelompokkan sesuai dengan kolom order_date dan province dan melakukan aggregasi sesuai dengan instruksi yang disediakan dan output yang dikehendaki
* merubah bentuk dataframe sesuai dengan output yang ditampilkan.",2285,1,9068
"Untuk
* mengecek apakah dataframe pada kolom province memiliki kondisi yang sesuai dengan elemen-elemen dalam list java kamu dapat menggunakan method .isin(...)
* mengelompokkan dan aggregasi kamu dapat menggunakan fungsi aggregasi berupa 'nunique' dan sum
* merubah dataframe sesuai dengan output [5], gunakan method .unstack(...) berdasarkan  province",2285,2,9069
Ketikkan function ggplot() dan jalankan dengan tombol RUN.,161,1,57
"Gunakan konstruksi ggplot() +  labs(title=""…"", subtitle = ""…"") dengan kedua parameter title dan subtitle diisi sesuai permintaan soal dalam 1 baris perintah. Perhatikan juga penggunaan huruf kecil dan huruf besar berpengaruh pada saat submit jawaban – ini dikarenakan perilaku sistem scoring DQLab.",162,1,58
Rubahlah code dengan konstruksi perintah persis dengan yang sudah dijelaskan pada soal (tanpa perubahan). Perhatikan juga penggunaan huruf kecil dan huruf besar berpengaruh pada saat submit jawaban – ini dikarenakan perilaku sistem scoring DQLab.,164,1,60
"Gunakan konstruksi plot.jakarta <- labs(x=""…"", y = ""…"") dengan kedua parameter x dan y diisi sesuai permintaan soal. Perhatikan juga penggunaan huruf kecil dan huruf besar berpengaruh pada saat submit jawaban – ini dikarenakan perilaku sistem scoring DQLab.",165,1,61
Rubahlah code dengan konstruksi perintah persis dengan yang sudah dijelaskan pada soal (tanpa perubahan). Perhatikan juga penggunaan huruf kecil dan huruf besar berpengaruh pada saat submit jawaban – ini dikarenakan perilaku sistem scoring DQLab.,164,1,62
"Tidak ada yang perlu dirubah atau ditambahkan pada code editor, cukup jalankan dan kumpulan dengan cara submit ke dalam sistem.",167,1,63
Ketikkanlah potongan kode yang sesuai dengan jalan mengganti _ _ _ pada code editor sesuai dengan urutan yang dicontohkan.,1316,1,2528
Buatkan cte untuk aktifitas transaksi customer selama tahun 2009 yang akan digunakan sebagai cohort. Pada cte ini dibuatkan month number yaitu month diff dari bulan transaksi customer dengan bulan transaksi pertama mereka,1795,1,1602
Hitung jumlah transaksi pertama customer perbulan yang akan dijadikan base dalam cohort,1795,2,1603
Gunakan library re ,1598,1,1161
"Gunakan log_model untuk membuat prediksi di data training (y_train_pred) melalui x_train.
Kemudian hitung classification report & confusion matrix menggunakan y_train & y_train_pred.",2176,1,5206
"Ketikkan dengan konstruksi x <- NA, dan pengecekan dilakukan sesuai dengan contoh pada Lesson.",245,1,94
Gunakan for email in emails : untuk pengecekan Pass atau Not Pass,1598,2,1162
"y_train_pred = ___.predict(___)
print('Classification Report Training Model (Logistic Regression) : \n', classification_report(___, ___))


",2176,2,5207
Ketikkan dengan konstruksi sesuai contoh pada Lesson dengan urutan sesuai permintaan.,243,1,104
"Ketikkan dengan konstruksi x <- NA, dan pengecekan dilakukan sesuai dengan contoh pada Lesson.",245,1,106
Ketikkan dengan konstruksi typeof(…) dan is.na(...) dengan menggunakan 4 nilai representasi seperti pada soal.,248,1,107
Gunakan konstruksi isi.vector <- c(…) untuk mengisi bagian […1..]. Masukkan variable isi.vector pada bagian […2…] dan function typeof untuk bagian […3…]. Untuk bagian […4…] cukup jelas.,252,1,108
Terdapat pada contoh-contoh di bagian Lesson.,254,1,109
Ketik perintah c(5:10),965,1,208
"",1403,1,687
"Masukkan vector c(""KD-008"", ""012345"", ""KD-010"") dan parameter unique_only=TRUE sebagai input untuk function basic_pattern_analysis.",384,1,8850
"Tidak ada yang perlu dirubah atau ditambahkan pada code editor, cukup jalankan dan kumpulan dengan cara submit ke dalam sistem.",197,1,8891
Pastikan penulisan atau pemanggilan file bertipe txt sudah benar beserta tanda baca nya,1381,1,9027
Pastikan set argument untuk mode membaca (read) dengan telah dituliskan dengan benar.,1381,2,9028
Gunakan konstruksi yang sama dengan contoh yang sama pada Lesson.,259,1,111
Lihat contoh pada bagian Lesson.,261,1,112
Lihat contoh pada bagian Lesson.,264,1,114
Gunakan function log seperti pada contoh di bagian Lesson.,266,1,115
Ketik 0/0 dan isikan ke variable contoh.nan menggunakan operator assignment <- sesuai dengan permintaan tugas.,267,1,116
Abcd efghij klmn,2722,1,7824
Ganti […] dengan contoh untuk function basic_pattern_analysis yang sama persis pada Lesson.,385,1,8851
"Pada bagian pertama, buat plot persis seperti yang telah dijelaskan di bagian teks, kecuali aesthetic x diganti dengan NAMA.KABUPATEN.KOTA. Untuk bagian kedua ketik function geom_bar dengan penulisan sesuai pada teks. ",204,1,8892
Ikuti pengisian pada code editor sesuai dengan petunjuk soal.,379,1,128
Pastikan kamu telah melakukan plotting sesuai dengan grafik yang diharapkan,2305,1,9072
Untuk plotting kamu dapat mengaplikasikan nama_dataframe.plot(...) dengan keyword argument  seperti yang diberikan di code editor.,2305,2,9073
Gunakan pola regex spasi berulang dan karakter spasi yang telah dijelaskan pada bagian keterangan function gsub.,403,1,133
"Gunakan pola regex bukan huruf, spasi, tanda titik dan tanda koma yang telah dijelaskan pada bagian keterangan function gsub.",405,1,134
Gunakan SQL persis seperti yang telah dijelaskan pada bagian Lesson.,409,1,135
Untuk plot alternatif ini kamu dapat mengerjakan aggregasi data terlebih dahulu dan kemudian langsung di chain dengan .plot().,1455,1,6179
Gunakan gabungan function format dan as.Date seperti dicontohkan pada Lesson.,461,1,137
Gunakan contoh function sapply pada lesson untuk […1…]. Untuk […2…] dan […3…] sama dengan praktek pada subbab sebelumnya.,462,1,138
Gabungkan dua porsi data.pelanggan sesuai urutan nama pada […1…] dan […2…].,463,1,139
Gunakan function colsplit untuk […1…] dan paste untuk […2…].,421,1,140
Isi satu per satu […1…] sampai dengan […12…] dengan function gsub.,420,1,141
"Isi […1…] dengan function SQL query dengan filter regex, […2…] dengan function gsub, dan […2…] dengan function unique.",460,1,142
"Isi […1…] dengan dengan variable hasil pembacaan file staging_tanggal_lahir3.xlsx, […2…] dengan kode pelanggan dan […3…] dengan variable hasil merge.",423,1,143
Untuk menampilkan variabel tertentu pada suatu data frame dapat menggunakan simbol $.,476,1,146
Untuk menampilkan variabel tertentu pada suatu data frame dapat menggunakan simbol $.,477,1,147
Gunakan code sesuai dengan Lesson.,481,1,148
Pastikan bahwa class AnalisData merupakan turunan (inheritance) dari parent class Karyawan menggunakan keyword super() di dalam konstruktor class turunannya.,1373,1,3107
Gunakan code sesuai dengan Lesson.,483,1,150
Gunakan code sesuai dengan Lesson.,486,1,151
Gunakan code sesuai dengan Lesson.,487,1,152
Gunakan code sesuai dengan Lesson.,488,1,153
Gunakan code sesuai dengan Lesson.,491,1,154
Gunakan code sesuai dengan Lesson.,492,1,155
Gunakan code sesuai dengan Lesson.,500,1,156
Gunakan code sesuai dengan Lesson.,501,1,157
Gunakan code sesuai dengan Lesson.,503,1,158
Gunakan code sesuai dengan Lesson.,505,1,159
"Untuk [...1...] dan [...2...] gunakan metode sesuai petunjuk pada comment, untuk [...3...] gunakan code yang sama dengan praktek sebelum ini.",430,1,160
Untuk [...1...] dan [...2...] gunakan metode sesuai petunjuk pada comment.,429,1,161
Code tinggal dijalankan dan di-submit.,428,1,162
"Isi [...1...] dengan function stringdist, [...2...] dengan nama variable jarak.teks, dan [...3...] dengan konstruksi filter data frame [jarak.teks <= 0.15]",427,1,164
Abcd efghij klmn,2722,2,7825
"Pastikan kamu telah mendefinisikan kembali fungsi yang diturunkan dari parent class, yaitu: lembur.",1373,2,3108
"*) Pastikan kamu telah menginisialisasi jumlah artikel yang mengandung kata jeruk dan kata salak.
*) Gunakan fitur count() untuk menghitung kemunculan kata jeruk dan kata salak berdasarkan kondisi
*) Jangan lupa setiap perhitungan kemunculan kata jeruk dan kata salak dijumlah dengan angka 1.",1337,1,3131
Ketikkan sesuai dengan apa yang pada Tugas Praktek di baris terakhir Code Editor.,961,1,202
Ketik perintah print(2 * 3) pada baris terakhir Code Editor.,967,1,205
"Tambahkan ""susi"" dan ""Susi"", masing-masing pada baris berbeda di code editor.",969,1,207
"Ketik perintah angka2 <- c(5:10) dan angka2, masing-masing pada baris berbeda.",966,1,209
Ikuti instruksi pada Lesson.,968,1,210
Perintah selengkapnya adalah print(info_mahasiswa$jumlah_mahasiswa).,977,1,211
"Perintah terurut adalah akreditasi <- c(""A"",""A"",""B"",""A"",""A""), info_mahasiswa2 <- data.frame(fakultas, jumlah_mahasiswa, akreditasi) dan print(info_mahasiswa2)",978,1,212
Paragraf ketiga di penjelasan. Terdapat nama fungsi dan nama variabel,2525,1,7362
"",2856,1,8323
Perhatikan nama-nama kolom yang diminta ,1982,1,3446
Dapat membuat pesan pemasaran yang lebih mengena ke tiap pelanggan; Bisa lebih mengenal customer / pelanggan; Biaya pemasaran bisa menjadi lebih rendah,42,1,225
Agar kita dapat membagi-bagi segmen customer dengan gampang; Dapat membantu kita menentukan jumlah clustering yang optimal; Dapat memberikan hasil jauh lebih cepat; Karena bisa memberikan best practice,43,1,226
Untuk menemukan pola unik dari sebuah dataset transaksi; Membuat paket produk yang bisa meningkatkan penjualan; Menyusun produk pada rak atau website yang berhubungan erat,97,1,227
Data Transaksi; Data Produk,98,1,228
Suatu algoritma komputer; Metode implementasi dari Market Basket Analysis,103,1,229
Suatu hubungan antar produk di transaksi penjualan retail,104,1,230
Produk tunggal yang menjadi bagian dari transaksi,107,1,231
Kombinasi produk yang terdapat pada suatu transaksi,108,1,232
"10",112,1,233
"4",113,1,234
"23",114,1,235
Sebuah pustaka (library) yang terdapat di R; Sebuah set komponen untuk menggambar grafik,152,1,236
"library(ggplot2); library(""ggplot2"")",153,1,237
Plot,154,1,238
Plot,155,1,239
Aesthetic Mapping,156,1,240
Aesthetic Mapping; Data; Layer dan tanda +; Plot,157,1,241
ggplot,160,1,242
Data Frame,170,1,243
x; y; color,171,1,244
"Inisialisasi plot, penambahan layer, dan menampilkan grafik",179,1,245
Plot,180,1,246
Data dan aesthetic mapping pada plot adalah default untuk seluruh layer; Data dan aesthetic mapping pada tiap layer akan override default pada plot,181,1,247
summary,182,1,248
Membersihkan data; Menambah kolom data; Menyatukan dua dataset; Memisahkan kolom data,226,1,249
Menjaga keamanan data; Menganalisa 10 nilai penjualan tertinggi,227,1,250
"Data dapat dimanfaatkan lebih jauh oleh bisnis; Mengurangi kesempatan bisnis yang hilang (opportunity lost); Antar sistem lebih mudah ""berbicara"" karena dapat diintegrasikan dengan lebih baik",228,1,251
Agar kita bisa membuang data yang tidak relevan; Agar data tersebut bisa diisi dengan nilai lain; Agar kita dapat membedakan antara data yang hilang dan hasil operasi matematika yang tidak mungkin dilakukan,235,1,252
Seluruh jawaban di atas benar,237,1,253
Factor adalah variable dengan nilai terbatas; Factor adalah variabel kategorik atau categorical variable,275,1,254
"3.14 s/d 1001.00",278,1,255
Banyak digunakan oleh fungsi analisa dan plotting di R ; Digunakan oleh ggplot2 untuk legend,282,1,256
Ketika kita butuh pengolahan nilai diskrit,284,1,257
"3, 1, 2, 1",295,1,258
Ilmu yang mempelajari bagaimana mendapatkan kesimpulan informasi; Ilmu yang mempelajari cara pengumpulan data; Ilmu yang mempelajari cara menganalisa data,347,1,259
Ada data dengan panjang total kolom yang tidak sama.; Pola yang tidak konsisten.; Pola suffix yang berbeda.,358,1,260
Isinya tidak standar sesuai dengan ketentuan lembaga tertentu seperti OJK (Otoritas Jasa Keuangan); Isinya tidak sesuai dengan standar umum penulisan nama,360,1,261
Semua benar.,362,1,262
Profiling dilakukan untuk tiap kolom data.; Profiling dilakukan untuk seluruh baris data.; Profiling dapat menemukan data anomali atau yang tidak wajar.; Hasil profiling dapat digunakan sebagai dasar untuk memperbaiki data.,370,1,263
Karena summary tidak bisa memberikan pola teks.; Karena kita memerlukan identifikasi lebih lanjut untuk posisi huruf ataupun angka yang tidak dapat diberikan oleh summary.,374,1,264
Sistem yang digunakan untuk menyimpan data.; Sistem yang digunakan untuk mengorganisasikan data.; Sistem yang digunakan untuk mengambil data.,394,1,265
Bahasa SQL digunakan untuk berinteraksi dengan objek-objek database.,397,1,266
Semua benar.,399,1,267
Ilmu yang mempelajari cara pengumpulan data; Ilmu yang mempelajari cara menganalisa data; Ilmu yang mempelajari bagaimana mendapatkan kesimpulan informasi,466,1,268
Sebagai dasar pengambilan keputusan; Sebagai materi penunjang Data Science,467,1,269
"Sampel sudah dapat mewakili populasi; Pengambilan populasi dapat bersifat merusak; Lebih menghemat biaya,waktu dan tenaga",471,1,270
Data kuantitatif adalah data yang dapat di lakukan operasi matematika; Data Kategorik adalah data Kualitatif; Semua data harus dalam bentuk angka untuk dilakukan analisis statistik,472,1,271
"Statistik deskriptif sebagai gambaran awal, sedangkan statistik inferensia untuk mengkonfirmasi hasil gambaran awal",496,1,272
Untuk mendapatkan informasi yang lebih akurat; Untuk menjawab permasalahan berdasarkan data sampel; Untuk mendapatkan kesimpulan dari data sampel,497,1,273
"2",864,1,339
Gunakan .head() untuk menampilkan 5 data teratas,1982,2,3447
"",1604,1,1174
Untuk menguji hubungan variabel numerik dengan kategorik menggunakan t-test; Untuk menguji hubungan variabel kategorik dengan kategorik menggunakan chi-square test; Untuk menguji hubungan variabel numerik dengan numerik menggunakan cor.test,506,1,274
"2,3,1,4,5",507,1,275
Naiknya Trend data Science membuat python juga ikut populer.; Kontributor python sangat solid dan berkembang pesat; Python didesain untuk code yang readable untuk memudahkan para pembuat code.; Python bisa dikembangkan untuk berbagai platform aplikasi dan prototype.,562,1,276
Web Development (Server-Side); Data Science; Android (mobile); Big Data Analytics; Computer Vision,563,1,277
c.	Ordinary Least Squares,597,1,278
e.	Semua jawaban di atas benar,598,1,279
d.	Semua jawaban di atas benar,601,1,280
b.	“4”,602,1,281
c.	median(perumahan$harga),611,1,282
d.	Scatter Plot,614,1,283
"d.	Jika luas rumah bertambah 1 kaki kuadrat, maka estimasi harga rumah akan bertambah sebanyak $81.39.",620,1,284
b.	Singapura,623,1,285
Kombinasi data yang harus dianalisa terlalu besar,628,1,286
Pet Food; Sirup,630,1,287
"{Gula,Pet Food}; {Sirup}",631,1,288
{Pet Food} => {Sirup},633,1,289
Nilai kemampuan seorang individu atau organisasi untuk melunasi pembayarkan berdasarkan rekam jejak historis,646,1,290
Keterlambatan pembayaran pinjaman,647,1,291
Mencari pola antara credit score dengan variable lain; Membuat model pengambilan keputusan untuk aplikasi pinjaman baru,648,1,292
"3",653,1,293
"2",654,1,294
"4",655,1,295
Melakukan seeding sehingga nilai random selalu sama di setiap versi R yang digunakan,666,1,296
"Menghasilkan bilangan acak 1 sampai dengan 900, dan tidak berulang; Menghasilkan sejumlah 800 bilangan acak",667,1,297
satu,668,1,298
Training set untuk input variables; Training set untuk class variable,669,1,299
Berupa factor,670,1,300
C50,671,1,301
Terdapat 3 data yang diklasifikasikan dengan risk rating 4 tapi dengan aktual klasifikasi 2,687,1,302
"5; 2",688,1,303
"6",689,1,304
Data yang diklasifikasikan berjumlah 259; Data yang salah klasifikasi berjumlah 80,690,1,305
model; data frame dengan input variables,694,1,306
Teknik agar kedua kolom berjejer dan lebih mudah dibandingkan,695,1,307
"Pada node nomor 4, klasifikasinya adalah risk_rating = 1; Jalur ke node 3 adalah jumlah_tanggungan <= 2",699,1,308
"259 adalah jumlah data untuk klasifikasi risk_rating = 1 dan risk_rating = 2; 259 adalah jumlah data untuk seluruh klasifikasi risk_rating yang ada pada node 4",700,1,309
Filter hasil yang tidak sama,703,1,310
b.	Jumlah parameter tidak boleh lebih dari 5,712,1,311
b.	Error Reg1 tidak berdistribusi normal,717,1,312
a.	Ada heteroskedastisitas pada model ini.,719,1,313
c.	Ada autokorelasi pada model ini.,722,1,314
b.	Estimasi bondprice bergantung pada error periode sebelumnya.,727,1,315
Menggabungkan data outlet antara sistem A dengan sistem B; Jumlah customer yang bertambah secara cepat tanpa ada pengecekan,732,1,316
Akan memberikan informasi salah tentang keuntungan setiap produk; Akan menyebabkan pemakaian space harddisk 30% lebih banyak dari seharusnya,733,1,317
Variance dari error tidak bersifat konstan,751,1,318
Ada efek ARCH pada model Reg3,756,1,319
"Jika volatilitas bulan sebelumnya bertambah 1, maka estimasi volatilitas bulan ini bertambah sebanyak 0.6558",760,1,320
"library(""ggplot2"")",771,1,321
openxlsx,772,1,322
Melihat daftar transaksi dari fungsi read.transactions; Melihat daftar rule yang dihasilkan oleh fungsi apriori,773,1,323
Data inflasi 20 negara selama 5 tahun.,785,1,324
"Untuk tes level 1%, ada cukup bukti untuk menyimpulkan bahwa negara yang sedang atau sudah mengalami redenominasi mata uang mempunyai nilai inflasi lebih besar daripada negara yang belum, ceteris paribus.",790,1,325
"Untuk tes level 10%, ada cukup bukti untuk menyimpulkan bahwa negara yang sedang atau sudah mengalami redenominasi mata uang mempunyai nilai inflasi lebih rendah daripada negara yang belum, ceteris paribus.",792,1,326
"Untuk tes level 5%, ada cukup bukti untuk menyimpulkan bahwa negara yang sedang atau sudah mengalami redenominasi mata uang mempunyai nilai inflasi lebih besar daripada negara yang belum, ceteris paribus.",794,1,327
"Untuk tes level 5%, ada cukup bukti untuk menyimpulkan bahwa model FEM lebih baik untuk digunakan pada persamaan ini daripada model Pooled.",797,1,328
"Untuk tes level 5%, ada cukup bukti untuk menyimpulkan bahwa model FEM lebih baik untuk digunakan pada persamaan ini daripada REM.",799,1,329
Fixed Effects Model,800,1,330
pendapatan; banyaknya tanggungan; sisa pinjaman; status kepemilikan tempat tinggal,808,1,331
unsupervised,809,1,332
pendapatan; banyaknya tanggungan; sisa pinjaman; status kepemilikan tempat tinggal,826,1,333
<em>unsupervised</em>,827,1,334
kesulitan visualisasi data dengan dimensi tinggi; error rate yang tinggi; korelasi antar variabel prediktor,828,1,335
Panjang vektor yang memuat koefisien adalah 1; Principal Component yang tidak memiliki korelasi dengan PC lain,830,1,336
suatu nilai eigen dibagi dengan banyaknya variabel,831,1,337
Menggambarkan Screeplot dan memilih angka pada elbow; Memilih beberapa PC dimulai dari PC dengan varians tertinggi sampai dengan batas yang diinginkan,832,1,338
Variabel asset dan income memberikan kontribusi terbesar pada PC1; Variabel dependent memberikan kontribusi terbesar pada PC2,865,1,340
Observasi 159 memiliki nilai asset dan income yang lebih besar daripada observasi 418; Observasi 159 memiliki dependent yang lebih banyak daripada observasi 418,866,1,341
Sistem Database Relasional (Relational Database Management System),890,1,342
nama_barang dan nama_item,897,1,343
apel; daun bawang; belimbing,899,1,344
"SELECT * FROM A, B where A.kolom1 = B.kolom2; SELECT * FROM A, B where kolom1 = kolom2",905,1,345
SELECT * FROM ms_produk INNER JOIN tr_penjualan on kode_produk = kode_produk;; SELECT * FROM ms_produk INNER JOIN tr_penjualan on ms_produk.kode_produk = tr_penjualan.kode_produk;; SELECT * FROM tr_penjualan INNER JOIN ms_produk on kode_produk = kode_produk;; SELECT * FROM tr_penjualan INNER JOIN ms_produk on ms_produk.kode_produk = tr_penjualan.kode_produk;,910,1,346
SELECT * FROM table_2 INNER JOIN table_1 ON key_column_1 = key_column_2;; SELECT * FROM table_1 INNER JOIN table_2 ON key_column_1 = key_column_2;,911,1,347
"Mengases multi elemen pada collection (tuple, list, set dan dict) dilakukan dengan menggunakan potongan setiap elemen,  contoh: 3:6 untuk mengakses elemen ketiga hingga kelima, :5 untuk mengakses empat elemen pertama, -5: untuk mengakses empat elemen terakhir.",1316,2,2529
"Pastikan juga bahwa kamu tidak memiliki kesalahan syntax:

import matplotlib.pyplot as plt
dataset.groupby(['order_month'])['gmv'].sum().plot()
plt.show()",1455,2,6180
Gunakan WHERE clause dengan operator LIKE dan wilcardnya untuk memilih kolom yang memiliki entri Flashdisk.,947,1,752
Gunakan ORDER BY keyword untuk mengurutkan nama pelanggan.,949,1,755
"library(""ggplot2"")",987,1,353
openxlsx,989,1,354
Lebih Mudah Dipelajari (Easier); Lebih Cepat (Faster):; Lebih kaya fitur (Richer); Telah terbukti (Proven),996,1,355
Lebih mudah dipelajari; Kaya akan fitur; Bersifat gratis dan open source,1071,1,356
MySQL; Oracle; PostgreSQL,1078,1,357
"Database, Table, Column",1080,1,358
Column,1082,1,359
B,1083,1,360
Structured Query Language,1085,1,361
Data Definition Language,1089,1,362
Data Manipulation Language,1090,1,363
DML,1091,1,364
SELECT harga FROM ms_produk,1094,1,365
"SELECT kode_produk, harga FROM ms_produk",1096,1,366
"SELECT * FROM ms_produk LIMIT 4; SELECT kode_produk FROM ms_produk LIMIT 4; SELECT nama_produk FROM ms_produk LIMIT 4; SELECT kode_produk, nama_produk FROM ms_produk LIMIT 4",1098,1,367
SELECT ms_produk.* FROM ms_produk;; SELECT ms_produk.kode_produk FROM ms_produk;,1101,1,368
SELECT kode_produk as kode FROM ms_produk;,1103,1,369
"SELECT kode_produk as kode FROM ms_produk;; SELECT kode_produk kode FROM ms_produk;; SELECT kode_produk as kode, nama_produk nama FROM ms_produk;; SELECT kode_produk as kode, nama_produk as nama FROM ms_produk;",1105,1,370
"SELECT a1.kode_produk kode, a1.nama_produk as nama from ms_produk a1; SELECT t1.* from ms_produk as t1; SELECT t1.kode_produk as kode, t1.nama_produk as nama, t1.harga as harga from ms_produk t1",1109,1,371
SELECT * FROM ms_produk WHERE nama_produk = 'Gantungan Kunci DQLab' OR harga = 50000;; SELECT * FROM ms_produk WHERE nama_produk = 'Gantungan Kunci DQLab' OR harga < 50000;; SELECT * FROM ms_produk WHERE nama_produk = 'Gantungan Kunci DQLab' OR  nama_produk = 'Gantungan Kunci DQLab' ;,1115,1,372
SELECT * FROM ms_produk WHERE harga > 50000 AND harga < 50000;; SELECT * FROM ms_produk WHERE nama_produk = 'Flashdisk DQLab 32 GB' AND nama_produk = 'Gantungan Kunci DQLab',1116,1,373
Table ms_item_kategori dan ms_item_warna digabungkan dengan kondisi isi nama_barang bisa dicocokkan dengan isi dari kolom nama_item.; Jika tidak ada isi yang sama di kedua table maka data dari kedua table tidak akan digabungkan.,1122,1,374
"80",1126,1,375
Tanggal lahir; Tipe keluhan pelanggan,1142,1,376
Banyaknya keluhan pelanggan dalam kurun waktu 1 bulan; Interval waktu yang diperlukan untuk memberikan solusi atas keluhan pelanggan,1143,1,377
Nomor rekening tabungan; Tipe keluhan pelanggan; Penyebab kerusakan printer,1144,1,378
Tanggal lahir; Nomor KTP,1145,1,379
Table movie disimpan pada variable movie_df,1877,1,2885
asdf,178,1,382
asdf,178,2,383
asdf,178,1,384
asdf,178,2,385
Gunakan WHERE clause untuk membuat kondisi pengurutan dan ORDER BY keyword untuk mengurutkan.,950,1,759
Gunakan metode JOIN untuk menngabungkan dua tabel dan kemudian pilihlah kondisi untuk kuantitas yang paling banyak dijual.,953,1,762
"Buatlah contoh_list, contoh_set dan contoh_frozen_set yang isinya sesuai dengan yang diminta.",1264,1,2333
"Pastikan format penulisan untuk tipe list diapit dengan tanda [ ], set diapit dengan tanda { }, dan frozenset diapit dengan tanda ({ })",1264,2,2334
"Gantilah kode yang tidak lengkap, _ _ _, pada code editor sesuai dengan deskripsi yang dicontohkan.",1301,1,2353
abc hint,1282,1,394
Apakah variabel fibo telah anda initialisasi untuk n + 1?,1280,1,397
Penjumlahan dilakukan dengan menggunakan suku i - 1 dan i - 2!,1280,2,398
"Pastikan untuk penggunaan tanda <, <=, >, dan >= sudah sesuai dengan pernyataan kondisi sesuai dengan yang dinaytakan pada baris komentarnya.",1301,2,2354
"",1414,1,705
"",1422,1,710
Untuk setiap nomor pelat kendaraan pastikan Anda telah membaginya atas nomor genap dan nomor ganjil. ,1313,1,2413
Perulangan dengan while loop dilakukan untuk jumlah hari dalam 1 bulan dan pastikan juga untuk hari genap adalah dengan nomor pelat genap dan begitu juga untuk hari ganjil.,1313,2,2414
Gunakan WHERE clause dengan operator LIKE dan wilcardnya berupa gelar seperti yang dimaksudkan serta operator boolean.,948,1,754
Gabungkan tabel yang memiliki kecocokan agar diketahui pelanggan mana yang paling banyak menghabiskan uang untuk bertransaksi.,954,1,763
Gabungkan tabel yang memiliki kesesuaian dan cari pelanggan yang belum pernah bertransaksi.,955,1,764
Pastikan kemu telah menggunakan plt.figure dengan keyword argumentnya adalah ukuran gambar (figsize) dengan valuenya adalah nominal ukuran lebar dan tingginya. ,1459,1,6181
Pastikan penulisan syntax tidak ada kesalahan.,1459,2,6182
"Pastikan bahwa kamu telah 
* mengimport LogisticRegression dari sklearn.linear_model dan metrik untuk persoalan klasfikasi ini
* menginisialisasi LogisticRegression sebagai logreg
* melakukan fitting dataset bagian training dan kemudian melakukan prediksi untuk dataset testing
* mencetak akurasi training dan testing; confusion matrix; dan classification report.",1580,1,6950
"nama fungsi : aov()
nama variabel : model_bitterness",2525,2,7363
Fungsi REPLACE dapat mengggantikan string/karakter yang dimiliki saat ini dengan string/karakter baru di setiap record/baris pada suatu kolom bertipe text.,1637,1,3878
"Perhatikan metadata dari Eigenvalue.

## # Description of:      Eigenvalue
## # Number of dimension: 5
.....",2551,1,7406
Pastikan kamu telah dengan benar menghitung jumlah kemunculan kata jeruk dan kata salak dalam masing-masing judul artikel tersebut.,1337,2,3132
Pastikan kamu telah membuat child class TenagaLepas dari parent class Karyawan dan kemudian memprosesnya dengan fungsi super().,1375,1,3149
"Pastikan Anda sudah menghitung variabel sub_warehousing, sub_cleansing, sub_integration, dan sub_transform yang masing-masingnya merupakan perkalian harga_harian-nya dengan total_hari-nya.",1302,1,2355
Pastikan kamu telah mengupdate pendapatan tambahan berdasarkan fraksi pendapatan yang diperoleh dari nilai proyek.,1375,2,3150
Apakah untuk total_harga Anda sudah menjumlahkan harga pada setiap item tagihannya?,1302,2,2356
"Penggunaan fitur pada suatu class math dilakukan dengan format math.nama_fitur(argumen); dengan math adalah class ada library matemaika (math) yang telah diimport, .nama_fitur() merupakan fitur-fitur yang dapat digunakan pada library math, dan argument dapat berupa variabel/bertipe data tertentu/blank seperti yang dinyatakan dalam tabel.",1389,2,2842
"5",2551,2,7407
"Dari table orders join ke table users untuk mendapatkan nama pembeli.
Gunakan group by dan having untuk memfilter sesuai petunjuk
Group by menggunakan user_id dan nama_user walaupun variabel user_id tidak dipakai, karena nama_user saja belum tentu unik",2424,1,6627
Pastikan kondisi untuk perulangan dengan for diambil dari setiap elemen dalam list_tagihan.,1309,1,2373
"Akses elemen pada tipe data string (setiap karakter pada string) seperti mengakses elemen pada collection: list, tuple, dan set.
Setelah mempelajari fitur apa saja yang dimiliki oleh tipe data str nantinya, perubahan ""Sepatu Niko"" menjadi ""SePatu NiKo"" dapat dilakukan dengan: nama_produk = nama_produk.replace(""p"", ""P"").replace(""k"", ""K"").",1330,2,2852
"Pastikan ketika kamu menggunakan fungsi REPLACE harus memiliki 3 argumen input seperti yang dinyatakan pada penulisan syntax. Kamu boleh menggunakan alias jika menginginkan nama_kolom baru lebih dimengerti .
SELECT REPLACE(nama_kolom, string/karakter_sekarang, string/krakater_baru) AS replace_kolom FROM tabel;",1637,2,3879
Perhatikan kamu telah menggunakan huruf kapital dalam penamaan variabel dan isi dari variabel.,1399,1,8142
Gunakan matplotlib untuk menampilkan gambar. ,2666,1,7780
"Pastikan kamu telah menggunakan tanda ""..."" untuk isi dari sebuah variabel yang berupa kalimat.",1399,2,8143
"Pastikan kamu telah mendefinisikan object Perusahaan dan karyawan_x (x = 1, 2, 3) dengan baik.",1360,1,3179
Manfaatkan fungsi break untuk keluar dari looping jika kondisi tagihan kecil dari nol.,1309,2,2374
"Pastikan kamu telah mengaktifkan karyawan_x (x = 1, 2, 3) di perusahaan ABC. ",1360,2,3180
"jalankan lapply(cov_id_update, names) di konsol untuk mengetahui nama-nama elemen di obyek cov_id_update. Pergunakan operator $ untuk mengekstrak elemen",2264,1,5445
"gunakan filter, spread, lalu select untuk memilih dan mengubah nama kolom",2084,1,4008
Pastikan kamu sudah mengoperasikan pendapat tambahan dengan menambahkan 5% dari pendapatan,1374,1,3221
"",1525,1,1021
"Pastikan bahwa telah mendefinisikan kembali fungsi yang diturunkan dari parent class, yaitu: lembur, dengan mengakses kembali fungsi yang dimiliki oleh parent class.",1374,2,3222
"library(dplyr)
library(tidyr)
df_order_pay <- ... %>% 
  filter(nama_event %in% c('...', '...')) %>% 
  spread(..., ...) %>% 
  select(..., ..., order = ..., pay = ...)
df_order_pay",2084,2,4009
Gunakan head() untuk menampilkan 5 data teratas,1877,2,2886
Yang diminta adalah akumulasi atau jumlah dari data yang bernilai NULL dari masing-masing kolom.,1923,1,2891
Gunakan .sum() untuk mendapatkan total data bernilai NULL pada masing-masing kolom. ,1923,2,2892
"",1536,1,1038
"",1541,1,1049
Table yang digunakan adalah table movie (movie_df) ,1931,1,2915
Gunakan .loc() untuk menampilkan data yang bernilai NULL ,1931,2,2916
Table rating disimpan pada variable rating_df,1938,1,2939
Gunakan .info() untuk menampilkan tipe data dari masing-masing kolom pada table rating,1938,2,2940
Gunakan .merge() untuk melakukan join pada kedua tabel,1939,1,2947
Lakukan join pada kolom 'tconst',1939,2,2948
C merupakan nilai rata-rata dari averageRating secara universal,1941,1,2951
Gunakan .mean() ,1941,2,2952
Masukan perintah sesuai dengan soal.,1703,1,2824
Sudahkah Anda memastikan bahwa dalam fungsi print() memiliki statement yang telah sesuai seperti yang dicontohkan?,1293,1,1620
Sudahkah x dibagi kembali dengan 3.,1293,2,1621
"<div style=""border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;"">

<h4>A PHP Error was encountered</h4>

<p>Severity: Notice</p>
<p>Message:  Undefined property: stdClass::$hint_desc</p>
<p>Filename: compose_chapter_item/practice.php</p>
<p>Line Number: 155</p>


	<p>Backtrace:</p>
	
		
	
		
	
		
			<p style=""margin-left:10px"">
			File: /var/www/contributor.dqlab.id/public_html/application/views/dqlab/compose_chapter_item/practice.php<br />
			Line: 155<br />
			Function: _error_handler			</p>

		
	
		
	
		
	
		
			<p style=""margin-left:10px"">
			File: /var/www/contributor.dqlab.id/public_html/application/controllers/Dqlab.php<br />
			Line: 713<br />
			Function: view			</p>

		
	
		
	
		
	
		
			<p style=""margin-left:10px"">
			File: /var/www/contributor.dqlab.id/public_html/index.php<br />
			Line: 315<br />
			Function: require_once			</p>

		
	

</div>",413,1,578
"Pastikan kamu sudah menginput setiap elemen dalam variabel bulan_pembelian diapit dengan tanda petik satu ('contoh') dan dipisahkan dengan tanda koma('contoh1','contoh2')",1315,1,2843
Lakukan import CountVectorizer,1985,1,3380
Perhatikan bahwa tahun yang digunakan hanya tahun 2011 dan 2012,1738,1,1445
Pastikan kamu telah mendefinisikan setiap child class sesuai dengan parent class yang telah dinyatakan dalam comment sebelum class didefinisikan.,1376,1,3151
Pastikan bahwa kamu telah menerapkan method .dropna() dan method .shape masing-masingnya untuk membuang baris dengan missing value dan mengetahui ukuran dataset yang telah dibuang missing valuenya.,1563,1,6761
Nyatakan variabel person dalam tipe data dict yang key-nya adalah nama dan pekerjaan.,1265,1,2337
Cetaklah variabel person berdasarkan masing-masing key tersebut.,1265,2,2338
Pastikan bahwa untuk child class yang menerima secara utuh parent classnya  telah menggunakan keyword pass.,1376,2,3152
Kolom order_month dibuat dengan memanfaatkan kolom  order_date dan method .apply() dan kemudian cetak 5 data teratas.,1450,1,6275
"Method .dropna() secara default bekerja dalam arah baris , jika mau diganti untuk arah kolom tinggal menambahkan keyword axis=1.",1563,2,6762
"Terdapat nama fungsi dan nama variabel di penjelasan. 
Contoh penulisan : nama_fungsi(nama_variabel)",2526,1,7364
"",1409,1,695
Gunakan setiap elemen pada list_daerah untuk perulangan bagian luar.,1310,1,2375
Gunakan setiap elemen pada list_buah untuk perulangan yang disarangkan (bagian dalam).,1310,2,2376
Fungsi anonim lambda digunakan untuk merubah seluruh entri pada dataset pada kolom bertipe tanggal sehingga diperoleh kolom baru yang berisi data tahun dan bulan saja yang dimasukkan pada method .apply(),1450,2,6276
Sales yang ditampilkan hanya untuk produk dengan order status finished,1738,2,1446
"",1448,1,799
"Fungsi : anova()
Variabel : model_bitterness",2526,2,7365
Jumlahkan Dim1 dan Dim2.,2552,1,7408
"select ....
from orders
inner join ....
group by user_id, nama_user
having count(1) > ... and min(total)> ...
order by 3 desc",2424,2,6628
Pastikan Anda telah mengimpor pandas dengan aliasnya secara benar dan membaca file csv 'retail_raw.csv'.,1518,1,1004
Pastikan Anda telah menggunakan fungsi count pada kolom product_id dari dataframe retail_raw.,1518,2,1005
Pastikan kamu mengetikkan scatter plot pertama dan kedua sesuai dengan yang dicontohkan. Secara default scatter plot hanya membutuhkan data pada sumbu horizontal dan data pada sumbu vertikal.,1502,1,6667
"Kode lengkap untuk scatter plot sebelum dan setelah kustomisasi adalah

import matplotlib.pyplot as plt
plt.clf()
# Scatterplot pertama
plt.figure()
plt.scatter(data_per_customer['quantity'], data_per_customer['gmv'])
plt.show()
# Scatterplot kedua: perbaikan scatterplot pertama
plt.figure(figsize=(10,8))
plt.scatter(data_per_customer['quantity'],data_per_customer['gmv'], marker='+', color='red')
plt.title('Correlation of Quantity and GMV per Customer\nDKI Jakarta in Q4 2019',fontsize=15, color='blue')
plt.xlabel('Quantity', fontsize = 12)
plt.ylabel('GMV (in Millions)',fontsize = 12)
plt.xlim(xmin=0,xmax=300)
plt.ylim(ymin=0,ymax=150000000)
labels, locations = plt.yticks()
plt.yticks(labels, (labels/1000000).astype(int))
plt.show()",1502,2,6668
"96.4",2552,2,7409
"- Fungsi dalam R untuk mengetahui jumlah kolom pada sebuah matriks. banyaknya kolom tertera di code editor.
- Nama variabel yang ada di penjelasan. 
- Fungsi yg digunakan untuk mengambil atau menetapkan nama-nama kolom dari objek seperti-matriks",2522,1,7412
"Variabel : atribut_sensoris
Fungsi : ncol() dan colnames() ",2522,2,7413
"Nama variable ada di sub-chapter sebelum ini (Tak Cukup Satu Sisi - Part 8).
Nilai repel ada di penjelasan sub-chapter ini. Baca lebih teliti lagi.",2542,1,7449
"Variabel : chocolates_pca
Nilai argumen / parameter : repel = TRUE",2542,2,7450
"Pastikan Anda telah menerapkan quartile 1, 2, dan 3 melalui fungsi quantile pada kolom item_price di data frame retail_raw.",1524,1,1020
Masukan seperti yang ada di soal dan mendapatkan nilai rata-rata dari kolom pinalty,2788,1,8222
Filter nilai rata-rata kolom pinalty dengan nilai diatas 30000,2788,2,8223
"Pastikan kamu sudah mengimport from sklearn.preprocessing import StandardScaler 
Lalu menggunakan kolom numerik Umur dan NilaiBelanjaSetahun sesuai hasil di soal. ",2808,1,8254
Gunakan fungsi .describe() untuk menampilkan hasil yang diminta. ,2808,2,8255
Selalu gunakan fungsi print() untuk menampilkan data (new_df),2826,2,8290
Pastikan Anda telah mengimpor pandas dengan aliasnya secara benar dan membaca file csv 'retail_raw.csv'.,1520,1,1050
"Pastikan Anda telah 
(1) menggunakan fungsi len dan count pada kolom product_id dari dataframe retail_raw
(2) menghitung jumlah dan persentase data yang hilang (missing value) dari kolom product_id.",1520,2,1051
"",1557,1,1057
"",1567,1,1083
"",1574,1,1102
"Elemen pertama pada suatu collection (tuple, list, set, dan dict) adalah indeks ke-0. Jika menentukan elemen dari arah kanan ke kiri maka elemen paling kanan memiliki indeks -1.",1315,2,2844
"Proses 
* fitting selalu menggunakan dataset independet dan dependent yang telah displit untuk bagian training;
* predict atau memprediksi model hasil fiiting dilakukanpada dataset independent bagian testing
* untuk menentukan akurasi dan metrik (confusion matrix; dan classification report) menggunakan dataset dependent (y) bagian testing dengan dataset hasil prediksi yang telah dilakukan pada langkah sebelumnya",1580,2,6951
Gunakan formula yang sudah diberikan untuk menghasilkan burn_rate_percentage,1758,1,2293
promotion_value didapatkan dengan melakukan sum terhadap discount_value,1758,2,2294
Pastikan kamu telah telah merubah semua karakter di kolom FirstName menjadi huruf kapital dan  di kolom LastName menjadi huruf non-kapital (huruf kecil semua).,1638,1,3880
Ganti […] dengan contoh untuk function basic_pattern_analysis yang sama persis pada Lesson.,376,1,8852
"",2377,1,5828
"Kedua fungsi UPPER dan LOWER hanya menghendaki satu argumen input yaitu nama_kolom yang akan dirubah caps-nya (besar/kecilnya). Gunakan juga alias jika kamu ingin menjadi nama_kolom tertentu.
SELECT UPPER(kolom_1) AS kolom_1, LOWER(kolom_2) AS kolom_2 FROM tabel;",1638,2,3881
Gunakan fungsi LENGTH untuk menentukan kondisi nama pelanggan terpanjang.,951,1,760
Gunakan fungsi LENGTH untuk menentukan kondisi nama pelanggan terpanjang.,952,1,761
Pastikan Anda sudah mendefinisikan ketiga variabel sesuai dengan data yang disediakan dalam tabel.,1266,1,2339
"*) Pastikan kamu telah menginisialisasi nilai dari kata positif untuk jeruk  dan salak.
*) Loop terluar akan menggunakan variabel yang berisi list frasa, dan loop terdalam menggunakan kata bernilai positif dari yang ada dari keseluruhan frasa.
*) Pengecekan kondisi berdasarkan string ""Jeruk"" dan kata positif untuk jumlah artikel mengandung kata positif di judul_artikel, demikian juga untuk string ""Salak"" dan kata positifnya.",1338,1,3133
Pastikan Anda telah mengimpor pandas dengan aliasnya secara benar dan membaca file csv 'retail_raw.csv'.,1516,1,997
Pastikan untuk variabel baju  dan celana dinyatakan dalam tipe data dict.,1266,2,2340
Baca kembali nama fungsi dan nama package yg ada di dalam penjelasan.,2521,1,7410
Pastikan Anda telah menggunakan fungsi len pada kolom product_id dari dataframe retail_raw.,1516,2,998
"Untuk mendapatkan nilai total_tagihan tanpa menggunakan while loop, pastikan kamu menambahkan elemen dari data yang berupa list secara berurutan.",1305,1,2359
Pastikan untuk mengisi kondisi pada while loop sesuai dengan kondisi bahwa selama nilai i kurang dari jumlah_tagihan.,1305,2,2360
"Pastikan 
*) untuk setiap string yang digunakan diapit oleh kutip 2, seperti: ""contoh str"".
*) perhitungan pasangan kemunculan kedua buah dan kata positifnya selalu dijumlah 1.
",1338,2,3134
"Pastikan kamu sudah memilih 
(1) kolom total dan 
(2) kolom qty",1652,1,3935
"package : library(dplyr)
fungsi : n_distinct(panelist) -> panelist di dalam fungsi n_distinct() merupakan parameter.
n_sample : 6
n_panelist : 29",2521,2,7411
"Lengkapi bagian pertama dengan aesthetic mapping y dengan JUMLAH. Untuk bagian kedua masukkan stat parameter dengan nilai ""identity"".",205,1,8893
"Pastikan kamu telah menghitung deskriptif statistik kolom quantity dari dataset retail_raw, yaitu min, max, mean, mode, median, dan standar deviasi.",1521,1,7252
Pastikan tiga kolom kamu gunakan untuk menampilkan query yang diminta.,1648,1,3806
"Jangan lupa, kasus ini merupakan aggregasi nilai suatu kolom tanpa pegelompokkan. ",1648,2,3807
Pergunakanlah terlebih dahulu perintah SELECT pada tabel tr_penjualan kemudian INNER JOIN-kan dengan tabel ms_produk.,2054,1,4119
Pastikan kondisi yang kamu gunakan adalah kode_pelanggan = 'dqlabcust03' untuk kedua tabel yang akan digabungkan dengan UNION.,2063,1,4141
Gunakan WHERE clause dan kondisi logika/operator BETWEEN.,946,1,8196
"Dari table orders join ke table users untuk mendapatkan nama pembeli
join ke table order_details yang sudah di-summary menjadi summary_order dan dihitung total_quantity
Gunakan group by dan having untuk memfilter sesuai petunjuk.
Group by menggunakan user_id dan nama_user walaupun variabel user_id tidak dipakai, karena nama_user saja belum tentu unik",2426,1,6629
"select ...
from orders
inner join ....
inner join (select order_id, sum(quantity) as total_quantity from order_details group by 1) as summary_order using(...)
group by ....
having ...>=...  and avg(total_quantity)>...
order by 3 desc",2426,2,6630
"Pastikan Anda telah menggunakan fungsi max, min, mean, median, dan std pada kolom item_price dari dataframe retail_raw.",1522,1,1017
Gunakan AVG untuk mendapatkan rata-rata dan COUNT untuk mendapat jumlah,2789,1,8224
"Untuk tugas praktek, pastikan pula bahwa kamu telah menghitung deskriptif statistik kolom item_price dari dataset retail_raw, yaitu min, max, mean, median, dan standar deviasi.",1521,2,7253
"Agar dapat mengetahui nilai pinalty, diperoleh dari informasi invoice. ",2789,2,8225
Kamu dapat menggunakan fungsi coord_flip(),2839,1,8364
Pastikan kamu telah mengambil informasi top 5 brands berdasarkan quantity dari dataset serta mengurutkan kelima top brands dari yang paling tinggi quantity-nya.,1504,1,6669
Pastikan kamu telah mengambil dataset dengan top 5 brands  untuk bulan Desember 2019 dan menerapkan teknik chaining dalam  memperoleh variabel top_brands.,1504,2,6670
Lengkapi susunan code yang hilang agar menampilkan seperti grafik pada soal. ,2667,1,7781
Ketikkan pada live code editor sesuai dengan yang tertera pada soal. ,2677,1,7787
Pastikan import matplotlib.pyplot as plt terlebih dahulu. ,2731,1,8052
Gunakan variabel x dan y sesuai dengan yang diminta pada soal. ,2731,2,8053
"",875,1,1105
Nama fungsi terdapat di penjelasan paragraf kedua.,2527,1,7368
Fungsi : summary.lm(),2527,2,7369
"Gunakan log_model untuk membuat prediksi di data testing (y_test_pred) melalui x_test.
Kemudian hitung classification report & confusion matrix menggunakan y_test & y_test_pred.",2177,1,5216
"y_test_pred = ___.predict(___)
print('Classification Report Testing Model (Logistic Regression) : \n',classification_report(___, ___))



",2177,2,5217
Gunakan library(janitor),2350,1,5829
Fungsi SUM digunakan untuk mengaggregasi jumlah dari suatu kolom bertipe numerik.,1640,1,3882
"Importlah train_test_split terlebih dahulu dari sklearn.model_selection yang  kemudian digunakan untuk membentuk X_train, X_test, y_train, y_test dari varibel independent X dan dependent y.",1571,1,6954
"Fungsi train_test_split menerima dua argument yaitu varibel independent X dan dependent y, serta dua keyword argument utama yaitu ukuran data test dan random_state untuk merandomisasi baris-baris untuk training dan testing.",1571,2,6955
"Pastikan kamu telah menambahkan plt.title, plt.xlabel, dan plt.ylabel setelah melakukan plotting data yang masing-masing argumentnya seperti yang dicontohkan. ",1461,1,6183
"Pastikan bahwa fungsi SUM digunakan hanya digunakan pada satu argumen input berupa kolom bertipe data numerik (integer atau float). Jika nama kolom setelah penjumlahan ingin dirubah, kamu dapat menggunakan alias.
SELECT SUM(nama_kolom) AS sum_kolom FROM tabel;",1640,2,3883
Gunakan .concatenate() untuk menggabungkan value dari tiap row menjadi dataframe baru,1976,1,3432
"- Fungsi yang digunakan untuk melakukan seleksi.
- Fungsi yang ada di penjelasan (untuk mengamati rentang nilai yang diberikan oleh panelis terhadap atribut-atribut sensoris).
- batas_bawah <- 0
- batas_atas <- 10",2523,1,7414
Gunakan .concat() untuk menggabungkan dataframe menjadi satu,1976,2,3433
Gunakan library BeautifulSoup untuk parsing data HTML dari website ,1597,1,1215
"Jangan lupa menggunakan statement SELECT DISTINCT untuk memperoleh kolom-kolom yang memiliki baris yang berbeda satu sama lainnya, sehingga tidak ada baris terduplikasi.",1988,1,3591
gunakan isinstance() untuk melakukan pengecekan list,1983,1,3448
gunakan .apply() untuk tiap elemen pada feature_col,1983,2,3449
Kolom pertama yang akan diubah menjadi list adalah director_name,1973,1,3462
"Setelah mengubah kolom director_name, kolom selanjutnya yang akan diubah adalah writer_name",1973,2,3463
Pastikan kamu sudah menempatkan kolom nama_customer dan alamat untuk kamu cari baris/row/record-nya yang berbeda.,1988,2,3592
"fungsi : select() dan skim_without_charts()
",2523,2,7415
"Pastikan kamu sudah memilih kode_produk, qty,  dan total  dengan kolom qty dan total dikenakan fungsi sum.",1652,2,3936
"- Kalimat awal pada penjelasan (Sekarang cetaklah kembali...). 
- Fungsi yang terdapat pada penjelasan serta nama variabel",2533,1,7418
Hanya untuk transaksi yang sudah terkirim ke pembeli berarti cari yang delivery_at  nya tidak kosong,2422,1,6633
delivery_at is ... ...,2422,2,6634
"Pastikan kamu telah  mengagregasi data_per_product_top5brand_dec dengan kolom quantity dan gmv menggunakan jumlah, serta kolom item_price menggunakan median.",1509,1,6671
"posthoc_bitterness$groups
Fungsi : plot.group()
Variable : posthoc_bitterness",2533,2,7419
Ganti […] menggunakan function basic_pattern_analysis dengan input berupa data.pelanggan$Nama dan parameter unique_only = TRUE.,378,1,8853
"<p>Lengkapi bagian dua bagian [&hellip;], masing-masing dengan <strong>fill</strong> berisi kolom <strong>JENIS.KELAMIN</strong> dan nilai <strong>POSITION</strong> dengan <strong>""dodge""</strong>.</p>",206,1,8894
"Pastikan sudah mengisi dengan benar kolom kategorikal beserta informasi data yang ingin ditampilkan :

kolom_kategorikal = ['Jenis Kelamin','Profesi','Tipe Residen'] ",2809,1,8256
"",1661,1,1271
"",1675,1,1273
"Gunakan fungsi df_encode[col] untuk menampilkan kolom data. 
Dan fungsi .head() untuk memunculkan data teratas. ",2809,2,8257
Table movie disimpan pada variable movie_df,1922,1,2887
Gunakan .info() ,1922,2,2888
stop_words yang digunakan dalam bahasa inggris,1985,2,3381
"Table yang digunakan adalah table movie (movie_df) 
",1933,1,2917
Gunakan .loc() untuk menampilkan data yang bernilai NULL ,1933,2,2918
Gunakan .split() untuk memisahkan sebuah film yang memiliki lebih dari satu genre,1936,1,2931
"",1699,1,1317
List kosong dapat dituliskan sebagai [],1936,2,2932
Gunakan .dropna() untuk menghilangkan semua nilai NULL,1940,1,2949
Kolom yang akan dihilangkan nilai NULL nya adalah kolom 'startYear' dan 'runtimeMinutes',1940,2,2950
Masukan sesuai di soal,1725,1,1377
"",1726,1,1393
Gunakan code sesuai dengan Lesson.,482,1,1398
"Cara sama seperti bagian sebelumnya, hanya saja ada 2 kolom yang ditambahkan, yaitu product_sub_category dan product_category",1759,1,1451
Data diurutkan berdasarkan sales performance dari yang paling tinggi,1759,2,1452
Fungsi COUNT digunakan untuk menghitung nilai non-NULL (missing value) suatu kolom.,1641,1,3884
Pastikan kamu menuliskan syntax dari statement program tersebut dengan benar.,1461,2,6184
"Nama library, nama fungsi dan nama variabel terdapat di penjelasan paragraf kedua.

",2530,1,7416
"Pastikan kamu telah mengisi dengan benar sesuai dengan yang dicontohkan untuk mengkustomisasi title, xlabel, dan ylabel melalui keyword argument masing-masingnya.",1462,1,6185
"Statement lengkap untuk kustomisasi title, xlabel, dan ylabel 

plt.title('Monthly GMV Year 2019', loc='center', pad=40, fontsize=20, color='blue')
plt.xlabel('Order Month', fontsize=15)
plt.ylabel('Total Amount', fontsize=15)",1462,2,6186
"Pastikan kembali bahwa kamu telah
* melakukan slicing pada Index dan kemudian mengambil data pada dataframe unstack_city_province untuk setiap kolomnya (sebagai measurement)
* downsampling secara bulanan dengan mngambil nilai rata-ratanya
* melakukan plotting sesuai dengan grafik yang diharapkan",2287,1,9074
Apakah Anda sudah memastikan isi dari list daftar_belanja sesuai dengan urutan variabel yang telah didefinisikan?,1267,1,2341
"Masukkan variabel sepatu, baju, dan celana ke dalam variabel daftar_belanja yang bertipe list.",1267,2,2342
"Library : FactoMineR
Variabel : res_bitterness
Fungsi : AovSum()",2530,2,7417
"Pastikan kamu menggunakan COUNT dengan melewatkan satu argumen input berupa kolom suatu tabel. Jika hasil penghitungan ingin dirubah nama kolomnya dapat kamu gunakan alias.
SELECT COUNT(nama_kolom) AS count_kolom FROM tabel;",1641,2,3885
"Pastikan bahwa kamu telah 
* mengalikan kolom 'item_price' dan kolom 'quantity' untuk membentuk kolom 'gmv' pada dataframe bernama dataset.
* mencetak ukuran dataframe dataset, dan
* mencetak lima data teratas dari dataframe dataset",1451,1,6277
Gunakan nama kolom kode_produk  yang sebelumnya telah menggunakan prefix nama_tabel untuk mengambil data kolom kode_produk  seperti yang ditugaskan.,1907,1,3593
"dataset['gmv'] = dataset['item_price']*dataset['quantity']
print('Ukuran dataset: %d baris dan %d kolom\n' % dataset.shape)
print('Lima data teratas:')
print(dataset.head())",1451,2,6278
Perhatikan nama kolom yang digunakan,1984,1,3450
Gunakan .apply() dengan axis = 1,1984,2,3451
Abcd efghij klmn,2723,1,7836
"Jangan lupa
*) penggunaan prefix mengikuti aturan nama_tabel.nama_kolom
*) untuk menggunakan tanda baca titik koma (;) di setiap akhir perintah SQL.",1907,2,3594
"gunakan !is.na(pay) untuk memfilter data yang tidak kosong
floor_date dengan satuan week",2090,1,4082
"Pastikan kamu telah 
* mengimport accuracy_score, precision_score, recall_score dari sklearn.metrics
* melakukan kalkulasi nilai accuracy, precission dan recall berdasarkan y_test dan y_pred",2625,1,7629
"Kode lengkap:

from sklearn.metrics import accuracy_score, precision_score, recall_score

#Menghitung Accuracy, Precision, dan Recall
print('Accuracy :', accuracy_score(y_test, y_pred))
print('Precision:', precision_score(y_test, y_pred, average='micro'))
print('Recall   :', recall_score(y_test, y_pred, average='micro'))",2625,2,7630
"ggplot dengan x tanggal, y lama_bayar
labs seperti deskripsi",2090,2,4083
Pastikan kamu menggunakan scatter plot untuk grafik yang akan divisualkan dan menggunakan kolom dataset yang sesuai serta mengkustomisasi tampilan sesuai dengan grafik yang dicontohkan.,1509,2,6672
Pastikan perulangan for menggunakan list yang diberikan.,1311,1,2379
Abcd efghij klmn,2723,2,7837
"Perhatikan penggunaan tanda ""..."" untuk tipe data yang melibatkan string, tanda ([...]) untuk list, ((...)) untuk tuple, ({...}) untuk set dan dict.",1402,1,2137
"* Pastikan kamu telah menggunakan key column untuk melakukan INNER JOIN pada kedua tabel, key column-nya adalah kolom kode_produk pada kedua tabel. 
* Jangan lupa bahwa INNER JOIN dengan key columns dituliskan dengan menggunakan prefix tabel dari masing-masing kolom yang dimaksud.",2054,2,4120
"",1649,1,1238
Pastikan kamu sudah menggunakan fungsi bersarang print(type()).,1402,2,2138
Pastikan pemasukan untuk nilai dana yang bernilai positif dan pengeluaran adalah dana yang bernilai negatif.,1311,2,2380
Seperti diinfokan dalam soal gunakan df_model untuk menggabungkan  df_encode dan df_std,2810,1,8258
"df_model = df_encode.merge(df_std, left_index = True, right_index=True, how = 'left')  

Jangan lupa untuk menampilkan datanya, gunakan fungsi print ()",2810,2,8259
Ketikkanlah syntax yang diberikan pada code editor.,1249,1,8012
Pastikan tidak ada kesalahan syntax dalam penulisan di code editor.,1249,2,8013
Ikuti petunjuk berupa gambar yang ada pada penjelasan.,2766,1,8055
"",1667,1,1272
"*) Ketikkanlah potongan kode yang sesuai dengan jalan mengganti _ _ _ pada code editor sesuai dengan urutan yang dicontohkan. 
*) Pastikan seluruh string dinyatakan dengan diapit tanda kutip 1, contoh: 'my string'.",1331,1,3063
"Jika ada variabel-variabel yang bertipe data str, maka operator + dapat digunakan untuk menyambungkan beberapa string tersebut.",1331,2,3064
Pastikan class AnalisData dan class IlmuwanData telah didefinisikan dengan benar dan perhatikan penulisan variabel yang dibutuhkan sudah benar. ,1365,1,3099
Pastikan bahwa class AnalisData dan class IlmuwanData merupakan turunan (inheritance) dari parent class Karyawan menggunakan keyword super() di dalam konstruktor class turunannya.,1365,2,3100
"",1691,1,1302
Masukan sesuai perintah soal,1723,1,1375
gunakan .shape untuk mendapatkan row dan column,1705,1,1396
gunakan .column untuk mendapatkan column yang ada pada dataframe,1705,2,1397
"Lengkapi bagian yang kosong dengan mengisi x-axis, y-axis, serta fill = jenis kelamin. 
Gunakan pula geom_col() dan coord_flip()",2842,1,8379
"",2280,1,5361
"Pastikan setelah fungsi dan nama_fungsi didefinisikan jangan lupa menempatkan tanda titik dua, :",1340,1,2827
Gunakan fungsi .hist() pada raw_data.,2733,1,8105
"Ingat, pada sumbu x yang digunakan adalah kolom 'Pendapatan'. ",2733,2,8106
"Pastikan Anda sudah mendefinisikan setiap variabel harga_sepatu, harga_baju, dan harga_celana sesuai dengan data yang disusun ke dalam dictionary.",1268,1,2343
Lengkapi nama provinsinya ya!,2352,1,5832
Isi sesuai permintaan soal.,377,1,8854
"Pastikan fitur index(), insert(), pop(), remove(), reverse(), dan sort() tercakup semuanya di code editor dengan memperhatikan ada atau tidaknya argumen yang diperlukan oleh masing-masing fitur yang digunakan.",1320,1,3243
"Pastikan bahwa kamu dengan benar telah memasukkan keyword argument pada method .plot() seperti yang dicontohkan, yaitu warna, markerm style grais dan ketebalan garis.",1464,1,6187
"Statement lengkap untuk mengkustomisasi line dan point pada lesson ini:

dataset.groupby(['order_month'])['gmv'].sum().plot(color='green', marker='o', linestyle='-.', linewidth=2)",1464,2,6188
"Pastikan Anda sudah benar dalam menghitung total_harga dan total_pajak, serta mencetak jumlah keduanya?",1268,2,2344
"",1889,1,2695
Pastikan untuk statement yang berada di dalam suatu fungsi telah di-indent sebanyak 4 spasi.,1340,2,2828
"Fitur pada suatu list dapat digunakan dengan format nama_list.nama_fitur(argumen), dengan
*) nama_list adalah nama variabel dari list tersebut, 
*) .nama_fitur() merupakan fitur-fitur yang dapat digunakan untuk sebuah tipe data list, dan 
*) argument dapat berupa variabel/bertipe data tertentu/blank seperti yang dinyatakan dalam tabel.",1320,2,3244
Fungsi AVG dapat kamu gunakan untuk mencari nilai rata-rata suatu kolom.,1642,1,3886
"Diurutkan dari kolom estimate dengan nilai paling besar, sampai yang paling kecil.",2531,1,7372
"choc1, choc4, choc2, choc5, choc6, choc3",2531,2,7373
"Pastikan kamu telah 
* mengimpor MinMaxScaler dari sklearn.preprocessing,
* mendefinisikan scaler menggunakan MinMaxScaler dan kemudian mentransform dataset tersebut untuk kolom-kolom yang telah ditentukan.",1568,1,6779
"Pada bagian box plot gunakan   sns.boxplot(df[kol], ax = axs[i][0])
Lalu pada bagian distplot gunakan  sns.distplot(df[kol], ax = axs[i][1]) ",2803,1,8260
"Kode untuk

#Define MinMaxScaler as scaler  
scaler = MinMaxScaler() 

dan

#Apply fit_transfrom to scale selected feature  
dataset[scaling_column] = scaler.fit_transform(dataset[scaling_column])",1568,2,6780
"Pastikan bahwa kamu menggunakan fungsi AVG dengan menerapkan satu argumen input yaitu kolom yang memiliki tipe data numerik (integer atau float). Kamu juga dapat menggunakan alias jika ingin merubah nama kolom hasil agregasi dengan fungsi AVG.
SELECT AVG(nama_kolom) AS avg_kolom FROM tabel;",1642,2,3887
Gunakan alias t2 sebagai nama baru tabel ms_produk tanpa menggunakan keyword AS.,1914,1,3595
"Pastikan pada saat memanggil plot data numerik, gunakan : 

kolom_numerik = ['Umur','NilaiBelanjaSetahun']
observasi_num(kolom_numerik) ",2803,2,8261
"Lengkapi data pada kolom_numerik dan kolom_kategorikal dengan benar. 
Data mana saja yang termasuk data numerikal dan yang mana saja yang termasuk data kategorikal. ",2827,1,8291
agregasi kolom PrimaryName sesuai group_col yang sudah di define (unnested_df),1977,1,3436
Gunakan append() untuk menambahkan dfi ke dfi_uni dan lakukan concat dfi_uni ke df_grouped,1977,2,3437
lakukan import cosine_similarity,1986,1,3452
tampilkan nilai dari cosine_sim,1986,2,3453
Gunakan .head() untuk menampilkan 5 baris teratas,1970,1,3331
Gunakan .info() untuk menampilkan info mengenai tipe data dari tiap kolom ,1970,2,3332
"Jangan lupa
*) alias tanpa keyword AS untuk tabel langsung digunakan setelah memilih nama tabel tersebut dengan menggunakan spasi saja
*) untuk menggunakan tanda baca titik koma (;) di setiap akhir perintah SQL.",1914,2,3596
"Pastikan kamu telah 
* menghitung beda tahun antara traksaksi pertama kali dengan transaksi terakhir yang dilakukan untuk masing-asing customer,
* pastikan kolom feature-nya adalah Average_Transaction_Amount, Count_Transaction, dan Year_Diff
* X dan y masing-masingnya merupakan subset dari dataframe df untuk kolom-kolom feature dan is_churn.",2621,1,7685
"df_investasi_per_investor <- df_event %>%
  filter(nama_event == '...') %>%                             # filter event investasi (payment)
  rename(tanggal_invest = ...) %>%                            # rename tanggal dari event menjadi tanggal_invest
  select(..., ...)                                            # pilih kolom sesuai instruksi
  ",2095,1,4135
Pastikan bahwa UNION ditempatkan diantara syntax SELECT * FROM nama_tabel WHERE condition.,2063,2,4142
Isi dengan function basic_pattern_analysis dengan input data.pelanggan.,372,1,8855
Tidak ada yang perlu dirubah atau ditambahkan.,208,1,8896
"Gunakan data `df_load` dari proses sebelumnya, dan gunakan kolom `Churn` dari data",2121,1,4316
gunakan count() untuk menghitung jumlah customer per tahunnya,1760,1,1594
gunakan group by() untuk mengelompokkan customer tiap tahunnya,1760,2,1595
Gunakan format import library_name as alias dan gantilah tanda _ _ _ di code editor sesuai dengan perintah.,1418,1,4360
Pastikan untuk argumen dari fungsi sesuai dengan jumlah yang dibutuhkan di dalam statement fungsi,1341,1,2829
pdrb_nonmigas = total_gdp_excluding_oil_and_gas_in_idr_million_constant_price,2352,2,5833
"1. year == 2008
2. rusak_parah ~ bad_damage
3. rusak_ringan ~ light_damage
4. cukup_baik ~ fair",2361,1,5864
"Pastikan 
*) setelah fungsi dan nama_fungsi didefinisikan jangan lupa menempatkan tanda titik dua, :
*) untuk statement yang berada di dalam suatu fungsi telah di-indent sebanyak 4 spasi
",1341,2,2830
Pastikan kamu sudah menginput setiap elemen dari list_makanan dan list_minuman sudah sesuai seperti contoh pada tugas ,1317,1,2845
"Gunakan kolom no_urut dan nama_produk, kemudian gunakan spasi sebagai penggati penggunaan keyword AS pada masing-masing kolom tersebut sehingga menjadi kolom dengan nama baru, yaitu nomor dan nama.",1911,1,3573
"Jangan lupa
*) urutan pemilihan kolom mempengaruhi penampilannya, 
*) alias tanpa keyword AS untuk disetiap kolom langsung digunakan setelah memilih nama kolom tersebut dengan menggunakan spasi saja
*) untuk pemilihan banyak kolom, setiap kolom yang dipilih harus dipisahkan dengan tanda baca koma (,)
*) untuk menggunakan tanda baca titik koma (;) di setiap akhir perintah SQL.",1911,2,3574
Gunakan kolom nama_produk dan harga jual yang didahului oleh prefix dari alias tabel ms_produk seperti yang ditugaskan.,1915,1,3597
Gunakan variabel i sebagai penanda indeks dalam melakukan perulangan.,1307,1,2367
Gunakan fungsi .head() pada data frame.,1425,1,8488
Pastikan kamu sudah menggunakan limit sebanyak 10 baris,1425,2,8489
"Jangan lupa
*) urutan pemilihan kolom mempengaruhi penampilannya, 
*) untuk pemilihan banyak kolom, setiap kolom yang dipilih harus dipisahkan dengan tanda baca koma (,)
*) prefix kolom merupakan alias dari nama tabelnya
*) alias tanpa keyword AS sebagai nama baru tabel langsung digunakan setelah nama eksisting tabel tersebut dengan menggunakan spasi saja
*) untuk menggunakan tanda baca titik koma (;) di setiap akhir perintah SQL.",1915,2,3598
Untuk menggabungkan dua atau lebih satu list dapat digunakan operator + seperti layaknya proses penjumlahan.,1317,2,2846
Ketikkanlah apa yang diperintahkan sesuai dengan dengan yang telah dicontohkan.,1898,1,3466
Pastikan kamu telah menggunakan fungsi MIN() dan MAX()untuk menghitung nilai dari kolom Semester1 dan Semester2.,1643,1,3888
Pastikan telah memilih seluruh kolom dari tabel ms_produk dan jangan lupa mengakhiri perintah SQL dengan tanda baca titik koma.,1898,2,3467
"Pastikan kamu menggunakan masing-masing fungsi tersebut, yaitu MIN();  dan MAX();  dengan melewatkan satu argumen input pada kolom yang sesuai tipenya dengan fungsi bersangkutan. Serta, kamu telah menyusun query-nya sesuai dengan tabel yang ditampilkan.",1643,2,3889
"gunakan investor_pay_loan untuk memfilter nama_event  
summarise pertama_invest untuk setiap investor  
floor_date dengan satuan week tanggal pertama invest hitung jumlah investor dengan n distinct investor_id",2093,1,4085
Table rating disimpan pada variable rating_df,1937,1,2937
Pastikan bahwa syntax yang digunakan untuk melakukan pembacaan dataset sudah benar,2078,1,8819
Gunakan fungsi glimpse untuk melihat data,2078,2,8820
Gunakan .head() untuk menampilkan 5 data teratas pada rating_df,1937,2,2938
"ggplot dengan x tanggal, y investor
labs seperti deskripsi",2093,2,4086
"Tidak ada hint, soal cukup jelas.",386,1,8856
Tuliskan code yang sama persis pada teks lesson.,212,1,8897
"1",2757,1,7930
"2",2757,2,7931
Fitur .find() dan .count() digunakan untuk dapat dipraktekkan melalui live code editor seperti yang telah dicontohkan.,1335,1,3077
"Argumen yang dipendekkan arg pada fitur .find(arg) dan count(arg), harus berupa string yang diapit dengan kutip 2, serta perhatikan juga karakter pada string apakah berupa huruf kapital atau kecil.",1335,2,3078
Pastikan kamu telah mendefinisikan setiap statement sesuai dengan yang diperintahkan.,1404,1,2141
Perhatikan kamu menggunakan fungsi bersarang print(type()) untuk mencetak tipe data yang diminta. Jika merubah data harus diperhatikan terlebih dahulu. misalnya penggunaan int() dan float().,1404,2,2142
Ketikkanlah potongan kode yang diberikan dengan cara mengganti _ _ _ pada code editor sesuai dengan urutannya. ,1295,1,2345
"Nilai barang, besar diskon, dan besar pajak sesuai yang diberikan dalam tugas.",1295,2,2346
Gunakan variabel i sebagai penanda indeks dalam melakukan perulangan.,1306,1,2363
"Pastikan kondisi pada while dan if sudah sesuai dengan persyaratan yaitu selama i kurang dari jumlah tagihan untuk while dan jika tagihan bernilai negatif, perhitungan dihentikan.",1306,2,2364
Perhatikan nama dari kolom-kolom yang dibutuhkan oleh name_df,1974,1,3422
Gunakan .head() untuk menampilkan 5 baris teratas dari name_df yang sudah diupdate,1974,2,3423
"Nama package, library, variabel, dan fungsi terdapat di penjelasan. Coba baca lebih teliti kalimat terakhir pada penjelasan.",2532,1,7374
"Pastikan bahwa kamu telah mendrop kolom Revenue dari dataset dan kemudian mengassignnya sebagai variabel X. Sementara itu, variabel y diambil dari kolom Revenue dataset.",1570,1,6789
de Finibus Bonorum et Malorum,2724,1,7840
Lorem Ipsum,2724,2,7841
"Kode untuk mencreate variabel dependent y dan independent X dari dataset yang tersedia adalah

X = dataset.drop(['Revenue'], axis = 1)
y = dataset['Revenue']",1570,2,6790
"library dan package : agricolae
variabel : HSD.test()
ekstraksi elemen : posthoc_bitterness$groups
",2532,2,7375
"Pastikan argumen dari fungsi sesuai dengan jumlah yang dibutuhkan di dalam statement fungsi, untuk argumen dengan nilai default maka argumennya disebut keyword argument.",1342,1,2831
"Pastikan 
*) setelah fungsi dan nama_fungsi didefinisikan jangan lupa menempatkan tanda titik dua, :
*) untuk statement yang berada di dalam suatu fungsi telah di-indent sebanyak 4 spasi
",1342,2,2832
Akses kolom harga dengan menggunakan prefix tabel ms_produk dan kemudian nyatakan kolom ini menjadi kolom baru dengan nama harga_jual.,1913,1,3575
"Berikut penulisan syntax untuk sorted ()
sorted(iter, key, reverse)",1987,1,3460
"Untuk melakukan proses
* slicing dapat digunakan attribute pd.IndexSlice dan kemudian applikasikan untuk mengambil setiap kolom sebagai measurement-nya
* downsampling dengan menghitung rata-rata kamu dapat menggunakan
              nama_dataframe.resample('M').mean()
* plotting kamu dapat mengaplikasikan nama_dataframe.plot(...) dengan keyword argument  seperti yang diberikan di code editor.",2287,2,9075
"Jangan lupa
*) prefix nama tabel ditempatkan di depan nama kolom dan diikuti tanda baca titik (.)
*) alias untuk setiap kolom langsung digunakan setelah memilih nama kolom tersebut 
*) untuk menggunakan tanda baca titik koma (;) di setiap akhir perintah SQL.",1913,2,3576
Tabel ms_produk dipilih berdasarkan kondisi kolom nama_produknya adalah 'Tas Travel Organizer DQLab'.,1919,1,3599
"Pastikan dipilih seluruh kolom dari tabel ms_produk dan gunakan klause WHERE untuk memenuhi kondisi berdasarkan kolom nama_produk = 'Tas Travel Organizer DQLab', serta jangan lupa tanda baca titik koma mengakhiri query SQL.",1919,2,3600
"Pastikan tabel ms_item_kategori ditampilkan pertama, dan tabel ms_item_warna ditampilkan setelahnya.",2034,1,4103
"Jangan lupa 
* untuk mengunakan perintah SELECT untuk menarik keseluruhan records/baris dari kedua tabel yang dimaksud,
* tanda titik koma untuk mengakhiri setiap query SQLnya pada masing-masing tabel.",2034,2,4104
"Pastikan fitur .count() dan .index() digunakan sesuai dengan yang ditunjukkan pada tabel di kolom Contoh Penggunaan. Jangan lupa, perhatikan penggunaan tanda baca dan bagaimana string pada bagian ini ditulis.",1321,1,3119
"Penggunaan fitur pada suatu tuple dilakukan dengan format nama_tuple.nama_fitur(argumen); dengan nama_tuple adalah nama variabel tuple tersebut dinyatakan, .nama_fitur() merupakan fitur-fitur yang dapat digunakan untuk sebuat tipe data tuple, dan argument dapat berupa variabel/bertipe data tertentu/blank seperti yang dinyatakan dalam tabel.",1321,2,3120
Pastikan kamu menggunakan fitur dari dict yang telah dipelajari untuk memperoleh kunci akses ke tipe data dict yang merupakan input dari fungsi deskripsi_properti(),1345,1,3139
"confusion_matrix_df = pd.DataFrame((confusion_matrix([...], [...])), ('No churn', 'Churn'), ('No churn', 'Churn'))
plt.figure()
heatmap = sns.heatmap(confusion_matrix_df, annot=True, annot_kws={""size"": 14}, fmt=""d"", cmap=""YlGnBu"")
heatmap.yaxis.set_ticklabels(heatmap.yaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)
heatmap.xaxis.set_ticklabels(heatmap.xaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)
plt.title('Confusion Matrix for Training Model\n(Logistic Regression)\n', fontsize = 18, color = 'darkblue')
plt.ylabel('True label', fontsize = 14)
plt.xlabel('Predicted label', fontsize = 14)
plt.show()",2246,1,5219
"",1916,1,2756
Pastikan kamu telah dengan benar memanggil fungsi hitung_rata_rata() dan hitung_standar_deviasi() untuk menentukan rata-rata dan standar deviasi setiap kolomnya.,1345,2,3140
"x axis didapat dari df_covid_timeline_denormalized[country_data]['last_update'] y axis didapat dari
df_covid_timeline_denormalized[country_data]['cases'] plot menggunakan format (x,y)",2392,1,6072
"import matplotlib.pyplot as plt
plt.clf()
countries = ['ID','MY','SG','TH','VN']
for country in countries:
	country_data = df_covid_timeline_denormalized['country']==country
	x = df_covid_timeline_denormalized[country_data]['last_update']
	y = df_covid_timeline_denormalized[country_data]['cases']
	plt.plot(x, y, label = country)

plt.legend()
plt.xlabel('Record Date')
plt.ylabel('Total Cases')
plt.title('Asean Covid19 Cases Comparison')
plt.show()",2392,2,6073
Gunakan len() untuk menampilkan jumlah data dari movie_df,1932,1,2987
Gunakan .notnull() untuk mengudapte movie_df dengan data-data yang tidak bernilai NULL pada kolom 'primaryTitle' dan 'originalTitle',1932,2,2988
Pastikan kamu sudah mengimport library keyword ke dalam live code editor,1400,1,2175
Perhatikan kamu telah menggunakan tanda (...) terutama pada fungsi print,1400,2,2176
Gunakan pd.read_csv untuk membaca dataset,1971,1,3398
Ketikkanlah apa yang diperintahkan sesuai dengan dengan yang telah dicontohkan.,1899,1,3824
Pastikan telah memilih kolom nama_produk dari tabel ms_produk dan jangan lupa mengakhiri perintah SQL dengan tanda baca titik koma.,1899,2,3825
Pastikan metode overloading telah diterapkan pada fungsi __init__ di class Karyawan.,1378,1,3225
"Pastikan untuk setiap object karyawan_barux (x = 1, 2, 3) telah benar dientrikan sesuai data yang diberikan pada tabel.",1378,2,3226
"gunakan fungsi left join, dengan join loan_id pada df_view_loan. 
dan loan_id dan investor_id pada df_order_pay",2085,1,4010
"library(dplyr)
df_loan_invest <- ... %>% 
  left_join(..., by = '...') %>% 
  left_join(..., by = c('...','...'))
df_loan_invest",2085,2,4011
gunakan !is.na(order) untuk memfilter data yang tidak kosong,2087,1,4062
"Penggunaan fitur add(), clear(), copy(), update(), pop(), dan remove() pada variabel bertipe set telah dinyatakan seluruhnya di live code editor sesuai dengan yang dicontohkan melalui Contoh Penggunaan. 
Pastikan tidak salah menggunakan tanda baca yang seharusnya dan perhatikan juga penulisan string.",1323,1,3121
"Seperti halnya list dan tuple, fitur pada suatu set dapat diakses melalui format nama_set.nama_fitur(argumen); dengan 
*) nama_set adalah nama variabel set,
*) .nama_fitur() merupakan fitur-fitur yang dapat digunakan untuk variabel bertipe set, dan 
*) argument dapat berupa variabel/bertipe data tertentu/blank seperti yang dicontohkan melalui tabel.",1323,2,3122
Gunakan len() untuk menampilkan jumlah data dari movie_df,1934,1,2989
Gantilah ___ pada live code editor dengan jawaban yang tepat. ,2683,1,7842
Isikan numpy atau pandas sesuai dengan panduan yang tertera pada comment. ,2683,2,7843
Pastikan Anda telah menjumlah seluruh harga sebelum mencari harga total yang telah ditambah pajak.,1298,1,2349
Pastikan faktor pengali yang Anda gunakan adalah 1.1 yaitu harga total barang yang dibeli setelah ditambah pajak.,1298,2,2350
Gunakan .notnull() untuk mengudapte movie_df dengan data-data yang tidak bernilai NULL pada kolom 'genres',1934,2,2990
Copy paste perintah lengkap write.xlsx pada Lesson untuk menggantikan bagian […].,381,1,8857
Tuliskan code yang sama persis pada praktek sebelumnya.,213,1,8898
" Pastikan kondisi pada while dan if sudah sesuai dengan persyaratan yaitu selama i kurang dari jumlah tagihan untuk while dan jika tagihan bernilai negatif, perhitungan dilanjutkan ke indeks berikutnya.",1307,2,2368
"Tabel ms_produk dipilih berdasarkan kondisi kolom nama_produknya adalah 'Gantungan Kunci DQLab', 'Tas Travel Organizer DQLab', atau 'Flashdisk DQLab 64 GB'.",1920,1,3601
"Pastikan 
*) dipilih seluruh kolom dari tabel ms_produk
*) gunakan klause WHERE untuk memenuhi kondisi yang dipersyaratkan bahwa kolom nama_produk adalah 'Gantungan Kunci DQLab', 'Tas Travel Organizer DQLab', atau 'Flashdisk DQLab 64 GB' melalui penerapan operand OR dua kali,
*) serta jangan lupa tanda baca titik koma mengakhiri query SQL.",1920,2,3602
Pastikan fitur .startwith() dan .endwith() digunakan di code editor sesuai dengan Contoh Penggunaan yang telah ditunjukkan.,1336,1,3159
Argumen pada fitur .startwith() dan .endwith() adalah bertipe str yang dibuat melalui penggunaan kutip 2 (pada kasus ini). Perhatikan juga karakter huruf kapital atau huruf kecil pada argumen yang akan dilewatkan melalui kedua fitur tersebut.,1336,2,3160
"1. scale_fill_viridis_c(option = ""magma"")
2. theme_ipsum(grid = FALSE, ticks = TRUE)",2366,1,5866
"Pastikan fungsi merge() sudah dipanggil dan variable df_covid_worldwide dan df_countries sudah benar. 
Jangan lupa gunakan 'country' dalam parameter 'on'.",2384,1,5899
"Gunakan fungsi pd.io.json.json_normalize(get_json([url variable])) untuk memanggil api. 
Pastikan alpha2 di-rename menjadi country",2383,1,5948
Gunakan fungsi .boxplot untuk menghasilkan grafik seperti yang diminta. ,2735,1,8107
"",2056,1,3943
"- raw_data.boxplot(column='Pendapatan')
- plt.show()
- plt.boxplot(x = 'Pendapatan', data=raw_data)
- plt.xlabel('Pendapatan')

",2735,2,8108
Ketikan seperti di soal,1714,1,5406
"Pastikan fitur split(), join(), dan replace() seperti yang dicontohkan tercakup semua di code editor.",1334,1,3069
"Fitur (arg adalah kependekan dari argumen)
*) .split(arg) menghendaki arg berupa str, jika string berupa spasi ("" "") maka akan memecah kalimat menjadi kumpulan kata
*) .join(arg) menghendaki arg berupa str, bersifat membalikkan proses dari penggunaan fitur .split(arg)
*) .replace(arg1, arg2) menghendaki kedua argumen berupa str yang bertujuan untuk mengantikan arg1 dengan arg2.",1334,2,3070
Pastikan fitur-fitur dictionary pada kolom Fitur telah digunakan semuanya di live code editor dengan mengacu pada kolom Contoh Penggunaan. Pastikan argumen dari setiap fitur sesuai dengan yang dicontohkan.,1326,1,3203
"Seperti halnya fitur pada collection, varibel bertipe dict memiliki fitur yang dapat diakses dengan format nama_dict.nama_fitur(argumen),
*) nama_dict adalah nama variabel bertipe dict,
*) .nama_fitur() merupakan fitur-fitur yang dimiliki oleh variabel bertipe data dict, dan 
*) argument dapat berupa variabel/bertipe data tertentu/blank seperti yang dinyatakan dalam tabel.",1326,2,3204
"Ketikkan perintah read.csv dengan detil persis seperti di bagian Lesson, setelah itu tampilkan dengan mengetikkan nama variable.",111,1,8858
Pastikan kamu sudah menggunakan indentasi sedang benar yaitu sebanyak 4 spasi,1370,1,3105
Gunakan perintah print,1707,1,2777
Pastikan kamu telah mendefinisikan atribut insentif_lembur sebesar 500000 pada class IlmuwanData. ,1370,2,3106
Gabungkanlah tabel-tabel yang memiliki kesamaan kolom serta tampilkan transaksi dengan jumlah item yang dibeli lebih dari 1.,956,1,8200
Gunakan SUM untuk menghitung jumlah payment_amount,2792,1,8231
"Sesuaikan isi dari data kolom kategorikal sesuai dengan hasil grafik pada soal : jenis kelamin, profesi dan tipe residen. 

# Membuat plot untuk setiap kolom kategorikal  
for i, kol in enumerate(kolom_kategorikal):  
    # Membuat Plot  
    sns.countplot(df[kol], order = df[kol].value_counts().index, ax = axs[i])  
    axs[i].set_title('\nCount Plot %s\n'%(kol), fontsize=15)  ",2804,1,8262
Gunakan fungsi plt.show() untuk menampilkan grafik. ,2804,2,8263
Gunakan fungsi df_encode,2827,2,8292
Lengkapilah data = df_penduduk.,2841,1,8374
"+ aes(x='NAMA KABUPATEN/KOTA', y='JUMLAH', fill=_______)
+ geom_col()
+ coord_flip()
+ labs(title='Jumlah penduduk per kabupaten/kota di DKI Jakarta (2013)',
x='______',
y='______')",2841,2,8375
Pastikan kamu telah menerapkan semua fungsi yang ada secara lengkap,1388,1,2839
"Penggunaan fitur pada suatu class math dilakukan dengan format math.nama_fitur(argumen); dengan math adalah class ada library matemaika (math) yang telah diimport, .nama_fitur() merupakan fitur-fitur yang dapat digunakan pada library math, dan argument dapat berupa variabel/bertipe data tertentu/blank seperti yang dinyatakan dalam tabel.",1388,2,2840
"- Baca kembali keseluruhan sintaks, kolom apa yang ditampilkan
- Fungsi pada package matplotlib.pyplot yang digunakan untuk membuat bar plot
- Coba ingat kembali fungsi apa yang digunakan untuk menampilkan diagram",2736,1,8109
"Gantilah kode yang tidak lengkap, _ _ _, pada code editor sesuai dengan urutan pada soal.",1300,1,2351
Perhatikan kondisi/syarat dari statemen desisi yang diinginkan sesuai dengan baris komentar.,1300,2,2352
Pastikan kondisi untuk perulangan dengan for diambil dari setiap elemen dalam list_tagihan.,1308,1,2369
Setiap statement yang dikenakan perulangan harus diindentasi/dijorokkan ke dalam.,1308,2,2370
Pastikan kamu sudah menggunakan semua fitur yang dibutuhkan sesuai dengan instruksi pada tugas,1389,1,2841
Pastikan kamu sudah melakukan string manipulation dengan benar (huruf kapital dan tanda baca),1330,1,2851
Pastikan kamu telah menginisialisasi variabel jumlah dan menghitung jumlah dengan menggunakan perulangan for.,1343,1,3161
Gunakan fungsi read_csv pada pandas,1420,1,8484
"(1) Pastikan harga_rumah sudah sesuai dengan screenshoot output yang diberikan.
(2) Pastikan fungsi get_all_specified_attributes, min_values, dan max_values telah dengan benar didefinisikan inputnya sesuai dengan urutan argumentnya.
(3) Pastikan fungsi transform_attribute, data_transformation, dan transform_data telah dengan benar didefinisikan inputnya sesuai dengan urutan argumentnya.
(4) Pastikan fungsi yang digunakan untuk menprediksi harga rumah price_based_on_similarity berdasarkan atributnya telah dengan benar didefinisikan inputnya sesuai dengan urutan argumentnya.",1392,1,8936
Pastikan Anda telah mengikuti petunjuk yang diberikan.,1262,1,9044
Query yang kamu ketikkan harus sesuai dengan yang dicontohkan. Serta pastikan fungsi aggregate COUNT(DISTINCT ...) dan SUM(...) telah kamu gunakan bersamaan dengan pengelompokkan kolom.,1647,1,3894
Fungsi aggregate COUNT(DISTINCT ...) dan SUM(...) menggunakan satu kolom sebagai argument inputnya. ,1647,2,3895
Tabel ms_produk dipilih berdasarkan kondisi kolom nama_produknya adalah 'Gantungan Kunci DQLab' dengan harga di bawah 50000.,1924,1,3603
"Pastikan 
*) dipilih seluruh kolom dari tabel ms_produk
*) gunakan klause WHERE untuk memenuhi kondisi yang dipersyaratkan bahwa kolom nama_produk adalah 'Gantungan Kunci DQLab' dengan harga berada di bawah 50000 yang disambungkan melalui penerapan operand AND
*) serta jangan lupa tanda baca titik koma mengakhiri query SQL.",1924,2,3604
"confusion_matrix_df = pd.DataFrame((confusion_matrix(___, ___)), ('No churn', 'Churn'), ('No churn', 'Churn'))
plt.figure()
heatmap = sns.heatmap(confusion_matrix_df, annot=True, annot_kws={'size': 14}, fmt='d', cmap='YlGnBu')
heatmap.yaxis.set_ticklabels(heatmap.yaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)
heatmap.xaxis.set_ticklabels(heatmap.xaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)
plt.title('Confusion Matrix for Testing Model\n(Logistic Regression)\n', fontsize = 18, color = 'darkblue')
plt.ylabel('True label', fontsize = 14)
plt.xlabel('Predicted label', fontsize = 14)
plt.show()",2247,1,5221
"1. library(directlabels)
2. show.legend = FALSE
3. label = provinsi",2354,1,5838
"Isi value V, R, C, dan m seperti yang sudah dilakukan sebelumnya",1943,1,2991
Rumus IMDb = (v/(m+v))*R + (m/(m+v))*C,1943,2,2992
Nama library dan nama fungsi terdapat di penjelasan. Coba baca lebih teliti penjelasannya.,2536,1,7378
"Pastikan kamu telah mengetikkan query sesuai dengan yang dicontohkan, yaitu ada empat kolom untuk outputnya nanti, serta dikelompokkan berdasarkan provinsi dan kemudian merek produk.",1646,1,4145
"Untuk pengelompokkan lebih dari satu kolom, kamu harus pastikan hirarki pengelompokkannya sehingga dapat diperoleh informasi yang bernilai. ",1646,2,4146
Pastikan nilai rata-rata telah dibuatkan proses matematikanya.,1343,2,3162
Gunakan .replace() untuk mengganti nilai \\N,1935,1,3191
Gunakan .astype() untuk melakukan casting terhadap kolom,1935,2,3192
Gunakan nama kolom nama_produk dan harga untuk mengambil data dari kedua kolom seperti yang ditugaskan.,1901,1,3826
"Jangan lupa
*) urutan pemilihan kolom mempengaruhi penampilannya, 
*) untuk pemilihan banyak kolom, setiap kolom yang dipilih harus dipisahkan dengan tanda baca koma (,)
*) untuk menggunakan tanda baca titik koma (;) di setiap akhir perintah SQL.",1901,2,3827
Data diurutkan secara descending,1944,1,2993
Gunakan .sort_values() untuk mengurutkan data,1944,2,2994
Lengkapi coding agar menghasilkan grafik seperti pada soal.,2668,1,7782
"print('Total missing values data dari kolom Churn',df_load[....].(....).sum())<br/>
# Dropping all Rows with spesific column<br/>
(....).dropna(subset=(....),inplace=True)<br/>
print('Total Rows dan kolom Data setelah dihapus data Missing Values adalah',(....).shape)",2121,2,4317
"Fungsi SQRT digunakan pada kolom suatu tabel SQL dengan mengembalikan nilai akar kuadrat dari kolom bersangkutan.
Contoh: SQRT(6.25) = 2.5",1610,1,3864
"Pastikan pengunaan fungsi SQRT diterapkan pada kolom bertipe numerik (integer atau float) suatu tabel SQL. Jika menggunakan nama kolom berbeda dari semula dapat digunakan alias.
SELECT SQRT(nama_kolom) AS sqrt_kolom FROM tabel;",1610,2,3865
Fungsi SUBSTRING_INDEX digunakan untuk memecah suatu text menjadi beberapa subs-text berdasarkan karakter atau gabungan karakter tertentu. Hasil pecahan text ini dapat diakses dengan melewatkan integer dari indeks (dimulai dari 1).,1634,1,3872
"Pastikan fungsi SUBSTRING_INDEX menggunakan 3 (tiga) argumen, yaitu nama_kolom, delimiter (karakter atau kumpulan karakter pemisah), dan indeks dari pecahan teks. Alias dapat digunakan jika menginginkan nama kolom yang lebih terbaca.
SELECT SUBSTRING_INDEX(nama_kolom, delimiter, index_to_return) AS subs_kolom FROM tabel;",1634,2,3873
"Pilih variable yang tidak standar ('gender','Dependents','Churn') untuk di rubah nilainya.
Standarkan nilai dari ke:
* Wanita -> Female
* Laki-Laki -> Male
* Iya -> Yes
* Churn -> Yes

Liat kembali jumlah unique valuenya",2128,1,4246
Gunakan method yang sama seperti yang sudah dilakukan sebelumnya untuk menampilkan 5 baris teratas dan info mengenai tipe data,1971,2,3399
Keseluruhan kolom pada tabel ms_produk dipilih berdasarkan kondisi yang disyaratkan.,1921,1,3500
"Pastikan 
*) dipilih seluruh kolom dari tabel ms_produk
*) gunakan klause WHERE untuk memenuhi kondisi yang dipersyaratkan untuk harga yang lebih besar (>) dari 50000,
*) serta jangan lupa tanda baca titik koma mengakhiri query SQL.",1921,2,3501
Fitur-fitur yang biasa dijumpai pada himpunan seperti pada kolom Fitur telah digunakan seluruhnya di live code editor dengan mengacu pada kolom Contoh Penggunaan. Pastikan kembali penggunaan tanda baca dalam menuliskan syntax.,1324,1,3125
"Fitur suatu variabel set dapat digunakan mengikuti format nama_set.nama_fitur(argumen),
*) nama_set adalah nama variabel bertipe set, 
*) .nama_fitur() merupakan fitur-fitur yang tersedia untuk variabel bertipe set, dan 
*) argument dapat berupa variabel/bertipe data tertentu/blank seperti yang dinyatakan dalam tabel.",1324,2,3126
Gunakan .merge untuk melakukan join table,1978,1,3442
Join pertama dilakukan secara inner dan yang kedua merupakan left join,1978,2,3443
Masukkan perintah sesuai contoh yang diberikan,115,1,8859
Nama-nama field dimasukkan ke dalam index variable pelanggan dengan pemisah koma.,50,1,8900
Gunakan klausa WHERE untuk menggabungkan kedua tabel berdasarkan kondisi key columns kedua tabel yang dimaksud.,2038,1,4107
"Pastikan bahwa kamu sudah mengunakan perintah SELECT pada kedua tabel ms_item_kategori dan ms_item_warna, serta WHERE clause pada kolom nama_barang dan nama_item sebagai key column-nya.",2038,2,4108
"Fitur append(), clear(), copy(), count() dan extend() pada suatu variabel bertipe data list yang diberikan harus tercakup keseluruhannya di code editor.",1319,1,3193
Pastikan kamu telah dengan benar memasukkan input dalam memprediksi harga rumah pada STEP 8 sesuai dengan argument input pada fungsi yang telah didefinisikan dari STEP 2 s/d STEP 7.,1392,2,8937
"Penggunaan fitur pada suatu list dilakukan dengan format nama_list.nama_fitur(argumen); dengan nama_list adalah nama variabel list tersebut dinyatakan, .nama_fitur() merupakan fitur-fitur yang dapat digunakan untuk sebuat tipe data list, dan argument dapat berupa variabel/bertipe data tertentu/blank seperti yang dinyatakan dalam tabel.",1319,2,3194
Pastikan urutan dari kolom pada masing-masing tabel sesuai dengan yang ditunjukkan.,2065,1,4147
Pastikan juga bahwa kolom-kolom dari tabel Customers terlebih dahulu barulah kemudian kolom-kolom dari tabel Suppliers.,2065,2,4148
"Pastikan fitur perubah caps suatu string pada python yaitu capitalize(), upper(), dan lower() telah digunakan sesuai yang dicontohkan pada live code editor.",1333,1,3071
"Fitur pada suatu variabel bertipe str diakses dengan format nama_str.nama_fitur(argumen); 
*) nama_str adalah nama variabel bertipe str, 
*) .nama_fitur() merupakan fitur-fitur yang dapat digunakan untuk sebuat tipe data str, dan 
*) argument dapat berupa variabel/bertipe data tertentu/blank seperti yang dinyatakan dalam tabel.",1333,2,3072
"Pastikan setelah class dan nama_class didefinisikan jangan lupa menempatkan tanda titik dua, :",1354,1,3083
Pastikan untuk statement yang berada di dalam suatu class telah di-indent sebanyak 4 spasi.,1354,2,3084
Pastikan seluruh fungsi ada pada class Karyawan dan pastikan penggunaan tanda baca sudah benar.,1362,1,3095
Pastikan atribut class yang bernilai private telah dinyatakan dengan menggunakan double underscore sebelum nama atributnya.,1362,2,3096
Ketikkan True pada code editor. ,2676,1,7789
"- raw_data['Produk']
- class_freq.plot.bar()
- plt.show()
- plt.bar(x=class_freq.index, height=class_freq.values)",2736,2,8110
"(1) Pastikan child class yang merupakan turunan class Karyawan telah lengkap didefinisikan fungsi-fungsinya sesuai dengan nilai default untuk masing pekerjaan karyawan.
(2) Pastikan list_karyawan dalam class Perusahaan bertipe object Karyawan. ",1380,1,3231
"(1) Pastikan objek Karyawan dari setiap nama karyawan sesuai dengan yang diberikan oleh tabel.
(2) Pastikan telah mengaktifkan karyawan pada object Perusahaan.",1380,2,3232
"gunakan fungsi n() untuk menghitung baris
n_distinct untuk menghitung unik data",2080,1,4000
"library(dplyr)
df_event %>% 
  group_by(...) %>% 
  summarise(jumlah_event = ...,
            loan = ...,
            investor = ...)",2080,2,4001
Masukan query seperti dibagian theory. ,2779,1,8201
Hanya menginput 1 baris kode seperti contoh dan tidak ada batasan huruf besar / kecil. ,2779,2,8202
Gunakan pd.read_csv untuk melakukan pembacaan dataset,1972,1,3402
"Seperti yang sudah dilakukan sebelumnya, gunakan head() dan info() untuk menampilakn lima baris teratas dan info tipe data",1972,2,3403
Perhatikan filter dari subscription menggunakan having,2793,1,8232
Gunakan .unique() untuk melihat variasi data yang ada pada suatu kolom,1975,1,3426
Kolom yang akan diubah menjadi list of list adalah knownForTitles,1975,2,3427
"Fungsi CEILING digunakan untuk membulatkan suatu bilangan ke arah positif tak hingga (ke arah kanan garis bilangan).
Contoh: 
CEILING(6.3) = 7
CEILING(-4.9) = -4",1607,1,3856
"Pastikan fungsi CEILING digunakan pada kolom bertipe numerik: float, jika menggunakan nama lainnya dapat digunakan alias.
SELECT CEILING(nama_kolom) AS ceiling_kolom FROM tabel;",1607,2,3857
Gunakan fungsi modelling dan pickle untuk menyelesaikan tugas ini. ,2828,1,8293
"def modelling (data):  
     
    kpoto = pickle.load(open('cluster.pkl', 'rb'))  
        
    clusters = kpoto.predict(data,categorical=[0,1,2])  
      
    return clusters  
  
clusters = modelling(new_df_model)  
  
print(clusters)  
",2828,2,8294
Fungsi SUBSTR digunakan untuk mengambil beberapa karakter atau subtext dari kolom bertipe text. Fungsi ini dapat digunakan untuk dimulai dari karakter keberapa dan jumlah karakter yang akan diambil.,1635,1,3874
"Pastikan penggunaan fungsi SUBSTR memiliki 3 argumen sepeti keterangan syntax yang telah diberikan. Jika diperlukan kolom hasil penerapan fungsi SUBSTR dengan nama lain dapat digunakan alias.
SELECT SUBSTR(nama_kolom,  indeks_awal, jumlah_karakter) AS substr_kolom FROM tabel;",1635,2,3875
Pastikan kamu sudah mengitung rata-rata data dan menginisialisasi varians.,1344,1,8324
m adalah nilai minimum yang dibutuhkan film agar termasuk di dalam list,1942,1,2955
gunakan .quantile() untuk mengambil jumlah populasi,1942,2,2956
"Untuk filter startYear, yang akan ditampilkan nantinya adalah film-film dari tahun startYear sampai sekarang",1945,1,2997
Film yang ditampilkan adalah film dengan nilai m yang lebih besar dibanding numVotes,1945,2,2998
"Untuk 
*) tugas 1 hitunglah banyak jumlah menu pada tuple_menu dan list_menu, dan
*) tugas 2 konversikan list_buah ke tipe data set untuk menentukan buah-buah yang unik dan kemudian konversikan kembali ke tipe data list.",1327,1,3127
"*) Untuk menentukan jumlah elemen pada suatu tuple, list dan set kamu dapat menggunakan fungsi len().
*) Perhatikan seperti yang telah dicontohkan bagaimana konversi antar collection (tuple, list, set) dilakukan. Untuk teknik lanjutnya kamu dapat menggunakan nested function, seperti pada tugas 2, kamu dapat menggunakan list(set(list_buah)).",1327,2,3128
Pastikan kamu telah benar dalam menginisialisasi total pengeluaran dan total pemasukan sebelum melakukan penjumlahan pengeluaran dan pemasukan.,1328,1,3129
Gunakan fungsi len() untuk menghitung panjang suatu data yang bertipe list/tuple/set/dict.,1328,2,3130
"Pastikan kamu telah mendefinisikan __init__, literals, dan fungsi lainnya yang sesuai untuk kedua class yang dibuat.",1359,1,3145
Pastikan kamu telah menerapkan fitur tipe data list untuk membuat daftar karyawan dalam class Perusahaan.,1359,2,3146
Perhatikan nama-nama tabel yang seharusnya di drop,1981,1,3444
Lakukan pengecekan kembali terhadap penamaan kolom-kolom,1981,2,3445
"Pastikan kamu telah mengentrikan kolom ""price"".",1432,1,8494
Pastikan kamu telah menggunakan fungsi hist dan kemudian mengentrikan bins=10.,1432,2,8495
Gunakan code sesuai contoh pada Lesson.,475,1,8734
Untuk mendapatkan item kedua sampai ke sebelas  gunakan index 1:11,1987,2,3461
"*) Ketikkanlah potongan kode yang sesuai dengan jalan mengganti _ _ _ pada code editor sesuai dengan urutan yang dicontohkan.
*) Pastikan seluruh fungsi ada pada class Karyawan.",1358,1,3177
"Pastikan 
*) setelah class dan nama_class didefinisikan jangan lupa menempatkan tanda titik dua, :
*) untuk statement yang berada di dalam suatu class telah di-indent sebanyak 4 spasi
*) jika ada fungsi yang didefinisikan dalam class maka akan mengikuti indentasi suatu fungsi.",1358,2,3178
Pastikan kamu menempatkan urutan tabel setelah FROM adalah ms_item_warna dan ms_item_kategori.,2044,1,4109
"Pastikan kamu menggunakan SELECT statement yang digabungkan dengan WHERE clause:
SELECT * FROM tabel_1, tabel_2
WHERE kolom_a = kolom_b;
kolom_a dan kolom b masing-masingnya adalah key columns pada tabel_1 dan tabel_2.",2044,2,4110
"1. library(hrbrthemes)
2. pdrb_nonmigas / 1e6",2355,1,5840
"gunakan investor_register untuk memfilter nama_event
floor_date dengan satuan week

ggplot dengan x tanggal, y investor
labs seperti deskripsi",2092,1,4226
Ketik variable transaksi diikuti dengan @ dan komponen itemsetInfo pada baris kosong di code editor.,117,1,8860
"Pastikan 
*) setelah class dan nama_class didefinisikan jangan lupa menempatkan tanda titik dua, :
*) untuk statement yang berada di dalam suatu class telah di-indent sebanyak 4 spasi
",1355,1,3219
Pastikan jika ada fungsi yang didefinisikan dalam class maka akan mengikuti indentasi suatu fungsi.,1355,2,3220
Gunakan nama kolom nama_produk dan harga untuk mengambil data dari kedua kolom dengan membatasi data hingga lima data teratas seperti yang ditugaskan.,1903,1,3472
"Jangan lupa
*) urutan pemilihan kolom mempengaruhi penampilannya, 
*) untuk pemilihan banyak kolom, setiap kolom yang dipilih harus dipisahkan dengan tanda baca koma (,)
*) untuk menggunakan tanda baca titik koma (;) di setiap akhir perintah SQL.",1903,2,3473
"Gunakan kolom no_urut dan nama_produk, kemudian terapkan alias pada masing-masing kolom tersebut sehingga menjadi kolom dengan nama baru nomor dan nama.",1909,1,3486
"",1979,1,3367
Pastikan kamu telah mencreate series dan dataframe sesuai contoh dan menempatkan series s1 dan dataframe df1 setelah series s2 dan dataframe df2 masing-masingnya.,2208,1,5407
"Jangan lupa
*) urutan pemilihan kolom mempengaruhi penampilannya, 
*) alias untuk disetiap kolom langsung digunakan setelah memilih nama kolom tersebut
*) untuk pemilihan banyak kolom, setiap kolom yang dipilih harus dipisahkan dengan tanda baca koma (,)
*) untuk menggunakan tanda baca titik koma (;) di setiap akhir perintah SQL.",1909,2,3487
Nama library (library_name) NumPy dan Pandas diimport dengan menggunakan huruf kecil seluruhnya (small caps),1418,2,4361
"Kolom total sebagai representasi dari total revenue diperoleh dari perkalian antara kolom qty dan kolom harga,",1929,1,3508
"Pastikan
*) dipilih kolom yang sesuai dengan yang diminta dan kolom total merupakan alias dari proses perkalian kolom qty dan kolom harga
*) kondisi total revenue menggunakan perkalian qty dengan harga yang berada sama dan diatas (>=) Rp. 100.000
*) untuk mengurutkan berdasarkan total revenue tertinggi dapat digunakan ORDER BY total DESC yang diakhiri oleh tanda baca titik koma (;)",1929,2,3509
gunakan fungsi select untuk memilih kolom sekaligus rename,2082,1,4004
"library(dplyr)
df_marketplace <- ... %>% 
  filter(nama_event == '...') %>% 
  select(..., marketplace = ...)
df_marketplace",2082,2,4005
gunakan is.na(order) untuk mengecek order yang kososng,2086,1,4013
Fungsi text CONCAT digunakan untuk menggabungkan kolom-kolom bertipe text dengan/tanpa text tertentu. Fungsi ini sama dengan CONCATENATE di Excel.,1613,1,3868
"Pastikan CONCAT memuat beberapa kolom bertipe text dan juga text tambahan tertentu. Jika nama kolom setelah proses CONCAT berbeda dapat dinyatakan dengan menggunakan alias.
SELECT CONCAT(kolom_1, kolom_2, ' - ', kolom_N) AS concat_kolom FROM tabel;",1613,2,3869
Kamu dapat menggunakan fungsi LENGTH untuk mengetahui berapa jumlah karakter di setiap baris pada suatu kolom bertipe text.,1636,1,3876
"Pastikan fungsi LENGTH hanya memiliki satu argumen input saja yaitu nama_kolom yang akan ditentukan berapa jumlah karakter di masing-masing barisnya. Kamu dapat menggunakan alias untuk mengganti nama default kolom.
SELECT LENGTH(nama_kolom) AS length_kolom FROM tabel;",1636,2,3877
"Gunakan x_train & y_train untuk mentrain model, kemudian simpan sebagai rdf_model.",2179,1,5224
"Library : corrplot
Fungsi :
- select()
- cor()
- corrplot()",2536,2,7379
Pastikan kamu menggunakan wildcard * untuk mengkses seluruh kolom pada tabel ms_item_kategori dan ms_item_warna yang ditempatkan setelah nama tabel.,2045,1,4111
"Pilih variable predictor ('gender','Partner','SeniorCitizen','PhoneService','StreamingTV','InternetService','PaperlessBilling'), ",2169,1,5166
Pastikan urutan kolom pada kedua tabel adalah seluruh kolom tabel ms_item_kategori dan seluruh kolom tabel ms_item_warna.,2045,2,4112
"from matplotlib import pyplot as plt
import numpy as np
import seaborn as sns
sns.set(style='darkgrid')
# Your code goes here
fig, ax = plt.subplots(3, 3, figsize=(14, 12))
sns.countplot(data=df_load, x='gender', hue='Churn', ax=ax[0][0])
sns.countplot(___)
sns.countplot(___)
sns.countplot(___)
sns.countplot(___)
sns.countplot(___)
sns.countplot(___)
plt.tight_layout()
plt.show() ",2169,2,5167
"1. library(ggwordcloud)
2. library(showtext)
3. read_csv(""hashtags.csv"")
4. showtext_auto()",2372,1,5868
"#Train the model
rdf_model = RandomForestClassifier().fit(___, ___)
print(rdf_model)",2179,2,5225
"<p>jawaban1: masukkan vector ke dalam variable vector field_yang_digunakan dengan menggunakan operator = atau &lt;-.</p>
<p>jawaban2: ketik variable pelanggan dengan index diisi dengan nama variable field_yang_digunakan.</p>",62,1,8901
"from sklearn.metrics import  classification_report

y_train_pred = rdf_model.predict(x_train)
print('Classification Report Training Model (Random Forest Classifier):')
print(classification_report(y_train, y_train_pred))",2180,1,5228
"gunakan !is.na(order) untuk memfilter data yang tidak kosong
floor_date dengan satuan week
persen_bayar sesuai rumus di deskripsi
",2089,1,4064
"gunakan filter, group_by lalu summarise",2083,1,4006
"library(dplyr)
df_view_loan <- ... %>% 
  filter(nama_event == '...') %>% 
  group_by(..., ...) %>% 
  summarise(jumlah_view = ...,
            pertama_view = ...,
            terakhir_view = ...)
df_view_loan",2083,2,4007
"-	Gunakan fungsi COUNT(DISTINCT ….) pada “SELECT” statement untuk menghitung total unik customers .
-	Gunakan “GROUP BY” untuk mengelompokkan total_penjualan berdasarkan kolom “quarter”. 
-	Gunakan fungsi BETWEEN… AND…. pada WHERE untuk men-filter CreateDate 
-	Format syntax menggunakan subquery : 
SELECT *
FROM (subquery statement) AS name

",2106,1,4217
"SELECT …., COUNT(DISTINCT ….) AS ….
FROM (SELECT …., …., QUARTER(….) AS quarter
FROM customers
WHERE ….. BETWEEN “…..” AND “…..”) AS tabel_b
	GROUP BY quarter
",2106,2,4218
"Gunakan 'tenure','MonthlyCharges','TotalCharges' untuk memilih varibale yang akan ditangani outliernya. 
Tentukan Nilai Q1 & Q3 nya terlebih dahulu menggunakan fungsi `quantile()`
Kemudian cari nilai IQR serta Minumum & Maksimumnya.
Ganti nilai outlier menggunakan funsi `mask` dengan nilai minimum dan maksimumnya.",2125,1,4238
"# Handling with IQR
Q1 = (df_load(....)).quantile(0.25)
Q3 = (df_load(....)).quantile(0.75)

IQR = Q3 - Q1
maximum  = (......)
print('Nilai Maximum dari masing-masing Variable adalah: ')
print(maximum)
minimum = (......)
print('\nNilai Minimum dari masing-masing Variable adalah: ')
print(minimum)

more_than     = (df_load > (....))
lower_than    = (df_load < (....))
df_load       = df_load.mask(more_than, (....), axis=1) 
df_load       = df_load.mask(lower_than, (....), axis=1)

print('\nPersebaran data setelah ditangani Outlier: ')
print(df_load(...).describe())",2125,2,4239
"Pastikan kamu telah mengimport Pandas sebagai alias, dan method append dapat digunakan untuk series dan dataframe sebagai berikut:
* nama_series_1.append(nama_series_2)
* nama_dataframe_1.append(nama_dataframe_2)",2208,2,5408
"Pastikan kamu telah dengan benar menempatkan urutan kedua dataframe yang akan digabung dengan concat, yaitu [df2, df1]. ",2209,1,5409
"Pastikan kamu melakukan penggabungan baik row-wise, column-wise, atau menggunakan identifier sesuai dengan keyword arguments yang diperlukan.

Syntax umum:
pd.concat(list_of_dataframe, axis=..., keys=...) ",2209,2,5410
"df_load = df_load.replace((....),(....))

# Masukkan variable
for col_name in list(....):
    print('\nUnique Values Count \033[1m' + 'After Standardized \033[0m Variable',(....))
    print(df_load(....).value_counts())",2128,2,4247
Gunakan fungsi ymd_hms dari package lubridate untuk mengubah tipe data menjadi timestamp,2079,1,4059
Gunakan fungsi glimpse untuk melihat perubahan tipe data,2079,2,4060
"Fungsi ABS() digunakan pada kolom tertentu dari suatu tabel SQL untuk mencari nilai absolut/mutlak dari kolom tersebut.
Contoh:
ABS(6.3) = 6.3
ABS(-4.9) = 4.9",1606,1,3852
"Pastikan fungsi ABS digunakan pada kolom bertipe numerik (integer atau float) dan nama lain dari kolom tersebut dapat menggunakan alias.
SELECT ABS(nama_kolom) AS abs_kolom FROM tabel.",1606,2,3853
"Fungsi FLOOR melakukan pembulatan ke arah negatif tak hingga (ke arah kiri garis bilangan). 
Contoh: 
FLOOR(6.3) = 6; 
FLOOR(-4.1) = -5",1608,1,3860
"Pastikan bahwa fungsi FLOOR digunakan pada kolom bertipe numerik: float dari suatu tabel SQL. Jika ingin nama kolom bersangkutan diganti dapat digunakan alias.
SELECT FLOOR(nama_kolom) AS floor_kolom FROM tabel;",1608,2,3861
"Jangan lupa dalam penulisan query untuk mengakses setiap kolom pada kedua tabel, gunakan prefix nama tabelnya.
",2070,1,4074
Untuk kondisi-kondisi yang diberikan gunakanlah operator logika OR untuk menghubungkannya.,2070,2,4075
"1. Pilihlah data pada tahun 2009
2. filter(year == 2009) ",2356,1,5842
Nama fungsi dan nama variabel terdapat di penjelasan pada paragraf kedua.,2538,1,7380
Pastikan kamu menggunakan kedua tabel yaitu ms_item_kategori dan ms_item_warna yang diketikkan secara berurutan.,2046,1,4113
Pada subchapter ini kamu hanya menggunakan perintah SELECT ... FROM ... untuk menggabungkan kedua tabel sesuai dengan yang diinstruksikan.,2046,2,4114
"confusion_matrix_df = pd.DataFrame((confusion_matrix(___, ___)), ('No churn', 'Churn'), ('No churn', 'Churn'))
heatmap = sns.heatmap(confusion_matrix_df, annot=True, annot_kws={'size': 14}, fmt='d', cmap='YlGnBu')
heatmap.yaxis.set_ticklabels(heatmap.yaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)
heatmap.xaxis.set_ticklabels(heatmap.xaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)

plt.title('Confusion Matrix for Training Model\n(Random Forest)\n', fontsize = 18, color = 'darkblue')
plt.ylabel('True label', fontsize = 14)
plt.xlabel('Predicted label', fontsize = 14)
plt.show()",2248,1,5229
"df_register_per_investor <- df_event %>%    
  filter(nama_event == '...') %>%         # filter event register     
  rename(tanggal_register = ...) %>%      # rename menjadi tanggal_register    
  mutate(bulan_register = floor_date(..., '...'))  %>%  # buat bulan register berdasarkan tanggal register    
  select(..., ..., ...)                   # pilih kolom sesuai instruksi    
  
df_pertama_invest_per_investor <- df_event %>%  
  filter(nama_event == '...') %>%         # filter event investasi (payment)  
  group_by(investor_id) %>%    
  summarise(pertama_invest = ...)         # hitung tanggal pertama invest  ",2094,1,4131
"Nama variable pelanggan_matrix digunakan untuk menggantikan […] di sebelah kiri assignment operator <-, dan isi […] berikutnya dengan vector dari nama kolom sesuai urutan yang disebutkan pada soal.",63,1,8902
"Copy paste perintah di Lesson ke code editor untuk mengganti bagian teks […], setelah itu ketik Identitas.Cluster pada baris berikutnya.",81,1,8915
Gantilah _ _ _ dengan perintah/fungsi/method yang sesuai dengan tipe data list.,1262,2,9045
"df_pertama_invest_per_investor %>% 
  mutate(bulan_pertama_invest = floor_date(..., '...'))  %>%  # buat bulan_pertama_invest berdasarkan tanggal_invest
  inner_join(..., by = '...') %>%                             # join kedua data.frame 
  mutate(jarak_invest = ...) %/% 30) %>%                      # hitung jarak_invest berdarkan instruksi
  group_by(..., ...) %>%                                      # kelompokan per bulan register dan jarak_invest
  summarise(investor_per_bulan = ...) %>%                     # hitung investor (jumlah baris) per kelompok
  group_by(...) %>%                                           # kelompokkan lagi per bulan register saja untuk menghitung total investor
  mutate(investor = max(...)) %>%                             # hitung total investor berdasarkan instruksi
  mutate(breakdown_persen_invest = scales::percent(.../...)) %>%  # hitung persentase breakdown  investor invest per bulan register per jarak_invest
  select(-...) %>%                                            # hilangkan jumlah investor per bulan agar nantinya bisa di-spread
  spread(..., ...) %>%                                        # spread lama invest dan breakdown persen invest sebagai value
  select(-`0`)                                                # hilangkan kolom 0 dari hasil spread, karena nilanya selalu 100%",2095,2,4136
"Fungsi : readRDS()
Variabel : chocolates_adjmean",2538,2,7381
"Pastikan kamu dengan benar mengetikkan keyword argument pada plt.legend() yaitu keyword: loc,  bbox_to_anchor,  shadow, dan ncol dengan nilai argument seperti yang telah dicontohkan.",1484,1,6639
Pastikan kolom death dan cases sudah benar (df_covid_denormalized['deaths'] dan df_covid_denormalized['cases']),2385,1,5901
Pastikan sudah menampilkan keseluruhan dari raw_data. ,2685,1,7846
" Pastikan terlebih dahulu bahwa jika kedua dataframe yang akan kamu merge sudah multi index, maka harus dijadikan index tunggal terlebih dahulu. Setelah itu baru digunakan pd.merge.",2211,1,5411
"Syntaxnya secara umum masih sama dengan Part 1, yaitu 
pd.merge(left=___, right=___, how=___, left_on=___, right_on=___).",2211,2,5412
"Buat kolom bantuan baru dengan nama `valid_id` untuk memberikan hasil pendeteksian kararkter dari customer id dengan gunakan regex
Lalu filter rows dengan hasil pendeteksian yang benar saja, hapus kembali kolom bantuan `valid_id` tersebut",2118,1,4374
Gunakan fungsi SUM() pada “SELECT” statement untuk menghitung total_penjualan,2103,1,4204
"df_load[......] = df_load[.....].astype(....).str.match(r'.....')
df_load = (df_load[df_load[......] == True]).drop(....., axis = 1)
print('Hasil jumlah ID Customer yang terfilter adalah',df_load[.....].count())",2118,2,4375
Gunakan fungsi itemFrequencyPlot dengan input variable transaksi.,120,1,8862
"",2672,1,7761
"Isilah […] dengan variable pelanggan dan pelanggan_matrix pada posisi […] ke 1, 2, dan 3. Urutan memegang peranan penting disini.",64,1,8903
Isilah […] dengan function unique disertai dengan pasangan kolom yang telah disebutkan pada soal praktek.,66,1,8905
Ikuti perintah untuk submit 10 (head) data teratas dan 5 (tail) data terakhir. ,2685,2,7847
"Kode lengkap untuk mengkustomisasi legend yang diberikan pada bagian ini adalah

plt.legend(loc='right', bbox_to_anchor=(1.6, 0.5), shadow=True, ncol=2)",1484,2,6640
Ketik langsung perintah yang telah diberikan pada tugas di bagian akhir baris live code editor,69,1,8912
Pastikan kamu telah menggunakan plt.savefig() dan memasukkan nama file. Pastikan juga bahwa ekstensi filenya adalah png.,1472,1,6329
"Potongan kode lengkapnya diberikan oleh:

plt.savefig('monthly_gmv.png')",1472,2,6330
Pastikan Anda sudah mendefinisikan bilangan1 dan bilangan2 semestinya!,1250,1,8016
Apakah Anda telah mencetak hasil pengurangan bilangan1 dengan bilangan2?,1250,2,8017
"area = luas_wilayah
label = provinsi",2357,1,5843
"Pastikan bahwa kamu telah mengimport DecisionTreeClassifier dari sklearn.tree. Kemudian inisialisasi classifier tersebut sebagai variabel model. Gunakan model.fit untuk melakukan training dataset yang telah displit yaitu X_train dan y_train.
",1572,1,6800
"Kode lengkap untuk proses inisialisasi clasifier dan fitting data:

from sklearn.tree import DecisionTreeClassifier
model = DecisionTreeClassifier()
model = model.fit(X_train,y_train)",1572,2,6801
Pastikan kamu dengan benar menuliskan query yang dicontohkan di code editor. ,2051,1,4115
Pastikan kamu menggunakan prefiks nama tabel dalam mengakses kolom dari kedua tabel yang di-INNER JOIN-kan. ,2051,2,4116
Pastikan kamu telah menggunakan prefix nama tabel untuk mengambil kolom-kolom di masing-masing tabel dan untuk key columnnya(jangan lupa tanda . setelah prefix tabel).,2057,1,4057
Kolom total dapat kamu buat dengan cara ms_produk.harga * tr_penjualan.qty AS total.,2057,2,4058
"gunakan !is.na(order) untuk memfilter data yang tidak kosong
floor_date dengan satuan week

ggplot dengan x tanggal, y lama_order
labs seperti deskripsi",2088,1,4063
"df_register_per_investor %>% 
  left_join(..., by = '...') %>%            # left join kedua data.frame 
  mutate(lama_invest = ...) %>%             # hitung lama_invest berdarkan instruksi
  group_by(..., ...) %>%                    # kelompokan per bulan register dan lama invest
  summarise(investor_per_bulan = ...) %>%   # hitung n distinct investor per kelompok
  group_by(...) %>%                         # kelompokkan lagi per bulan register saja untuk menghitung total investor
  mutate(register = sum(...)) %>%           # hitung total investor
  filter(...)) %>%                          # hilangkan investor yang tidak invest, lama invest kosong
  mutate(invest = sum(...)) %>%             # hitung lagi totalnya sehingga yang dihitung hanya yang sudah invest
  mutate(persen_invest = scales::percent(.../...)) %>%  # hitung persentase investor yang invest / register per bulan register
  mutate(breakdown_persen_invest = scales::percent(.../...)) %>%  # hitung persentase breakdown  investor invest per bulan register per lama invest
  select(-...) %>%                          # hilangkan jumlah investor per bulan agar nantinya bisa di-spread
  spread(..., ...)                          # spread lama invest dan breakdown persen invest sebagai value",2094,2,4132
"+ aes(x='NAMA KELURAHAN', y='JUMLAH', fill='JENIS KELAMIN')
+ geom_col()
+ coord_flip()
+ labs(title='Jumlah penduduk per kelurahan di DKI Jakarta (2013)',
",2842,2,8380
 aes() menerima argumen x dan y yang harus kita isi dengan nama kolom yang kita ingin representasikan di x-axis dan y-axis. Serta gunakan geom_line(),2851,1,8395
"import matplotlib.pyplot as plt
import seaborn as sns

# Masukkan variable
plt.figure() # untuk membuat figure baru
sns.boxplot(x=df_load['___'])
plt.show()

plt.figure() # untuk membuat figure baru
sns.boxplot(x=df_load['___'])
plt.show()

plt.figure() 
sns.boxplot(x=df_load['___'])
plt.show()",2124,1,4323
Gunakan fungsi shape sehingga menghasilkan tampilan seperti pada soal. ,2703,1,7848
"import datetime
df_covid_timeline_denormalized = df_covid_timeline_denormalized[(df_covid_timeline_denormalized['last_update'] >= datetime.date(2020, 3, 1))]",2391,1,5923
"df_inflasi['Bulan'] = pd.to_datetime(df_inflasi['Bulan'])
(ggplot(data=df_inflasi[df_inflasi['Negara']=='Indonesia'])
+ aes(x='Bulan', y='Inflasi')
+ geom_line()",2851,2,8396
Gunakanlah method .predict dari model dengan memasukkan argument X_test.,1573,1,6804
"Berikut kodenya:

y_pred = model.predict(X_test)",1573,2,6805
"Lengkapi bagian yang ___ pada konsol dengan fungsi berikut : 

print (raw_data.shape)
print (raw_data.shape[0])",2703,2,7849
Pastikan kamu telah mengetikkan kode sesuai dengan contoh yang diberikan. Perlu diperhatikan setiap tanda baca yang digunakan sudah tepat. ,2329,1,8823
"-	Gunakan fungsi COUNT(DISTINCT ) di statement SELECT untuk menghitung total_customers
-	Format syntax dengan operator IN : 
SELECT *
FROM TableName
WHERE Column Name IN (SELECT Statement);
",2109,1,4221
"SELECT “…” AS …, (COUNT(DISTINCT ….)*100 )/25 AS …
FROM orders_1
WHERE …. IN (SELECT DISTINCT …. FROM orders_2)
",2109,2,4222
"",2288,1,5369
"Langkah pertama gunakan `isnull()` untuk memastikan missing values. Kemudian gunakan `fill.na()` untuk mengisi missing values dari data yang hilang. 
Gunakan 11 untuk mengisi missing values dari `tenure`. Gunakan median dan lakukan looping untuk variable numeric lainnya (['MonthlyCharges','TotalCharges'])",2122,1,4250
"print('Status Missing Values :',(....).isnull().values.any())
print('\nJumlah Missing Values masing-masing kolom, adalah:')
print(df_load.(....).sum().sort_values(ascending=False))

# handling missing values Tenure fill with 11
df_load(....).fillna((....), inplace=True)

# Handling missing values num vars (except Tenure)
for col_name in list(....):
    (....) = df_load[col_name].median()
    df_load[col_name].fillna((....), inplace=True)
    
print('\nJumlah Missing Values setelah di imputer datanya, adalah:')
print(df_load.(....).sum().sort_values(ascending=False))",2122,2,4251
"Sebelum kamu mengapply method .join() silakan di set terlebih dahulu index dari kedua dataframe yang akan di-join. Langkah ini ekuivalen dengan pd.merge(..., ...., ..., left_on=___, right_on=___).",2212,1,5413
"Syntax umum untuk proses join
df1.join(df2)
df1 dan df2 sudah memiliki key column, jika belum memiliki key column gunakan method .set_index() terlebih dahulu pada kedua dataframe ini.",2212,2,5414
<p>Ketik perintah <strong>inspect</strong> dengan input variable <strong>transaksi</strong>.</p>,123,1,8863
"1. library(scales)
2. fill = luas_wilayah
3. labs()
4. theme_ipsum()",2358,1,5845
"<p>Kombinasikan fungsi <strong>inspect</strong>, <strong>subset</strong>, operator <strong>%in%</strong> dan operator &amp; terhadap variable <strong>mba</strong>. Persis seperti contoh pada Lesson.</p>",128,1,8868
Tariklah masing-masing tabel tr_penjualan dan ms_produk.,2052,1,4117
Gunakan perintah SELECT ... FROM ... untuk masing-masing tabel tr_penjualan dan tabel ms_produk.,2052,2,4118
Isilah […] dengan nama variable pelanggan$NilaiBelanjaSetahun dibagi dengan angka 1 juta menggunakan operator /.,65,1,8904
"Gunakan loop, dan pilih variable yang bersifat kategorik ('gender','SeniorCitizen','Partner','Dependents','PhoneService','MultipleLines','InternetService','OnlineSecurity','OnlineBackup','DeviceProtection','TechSupport','StreamingTV','StreamingMovies','Contract','PaperlessBilling','PaymentMethod','Churn') untuk di deteksi nilainya.",2127,1,4324
"ggplot dengan x tanggal, y persen_bayar
labs seperti deskripsi",2089,2,4065
"# Masukkan variable
for col_name in list(....):
    print('\nUnique Values Count \033[1m' + 'Before Standardized \033[0m Variable',(....))
    print(df_load(....).value_counts())",2127,2,4325
Pastikan kamu menggunakan perintah SELECT untuk tabel_A kemudian gunakan UNION sebelum menggunakan kembali perintah SELECT untuk tabel_B. ,2062,1,4139
"Jangan lupa bahwa syntaxnya
SELECT * FROM tabel1
UNION
SELECT * FROM tabel2;
tabel1 dan tabel 2 adalah nama-nama tabel dalam database yang memenuhi syarat untuk digabungkan dengan UNION.",2062,2,4140
"Pastikan bahwa jumlah kolom adalah sama di kedua tabel yang akan digabungkan dengan UNION dengan urutan kolom berupa nama_produk, kode_produk dan harga.",2071,1,4078
Pastikan kamu menggunakan klausa WHERE untuk membuat kondisi sesuai dengan yang diminta oleh Kroma dalam menggabungkan kedua tabel tersebeut.,2071,2,4079
"",2105,1,4154
Untuk mencari unique value dari setiap kolom kamu harus mengindex dataframe dengan nama kolomnya sehingga menjadi series dan kemudian terapkan method .unique().,2215,1,5415
"Jangan lupa ditempatkan ke dalam looping perulangan untuk sejumlah kolom yang dimiliki oleh dataframe.
Untuk mengambil nama-nama kolom kamu dapat menggunakan attribut .columns pada dataframe.",2215,2,5416
"<p>Ketik perintah <strong>apriori</strong> dengan input variable <strong>transaksi</strong>, kemudian simpan sebagai variable dengan nama <strong>mba</strong> dengan menggunakan operator <strong>&lt;-</strong>.</p>",124,1,8864
Isi […] sesuai petunjuk pengisian parameter pada soal. Urutan sangat berpengaruh untuk penilaian.,52,1,8906
"import json
import numpy as np
import pandas as pd
import requests",2379,1,5924
"Pastikan x adalah kolom name, dan y adalah kolom fatality_ratio. dan plt.bar() menggunakan value x,y dan parameter rotation diset 90 derajat. ",2388,1,5951
Input 1 baris kode pada soal dan klik run. ,2780,1,8203
Huruf besar / kecil atau tanda baca tidak berpengaruh di sini. ,2780,2,8204
"-	Gunakan fungsi COUNT(DISTINCT ….) pada “SELECT” statement untuk menghitung total unik customers .
-	Gunakan “GROUP BY” untuk mengelompokkan total_penjualan berdasarkan kolom “quarter”. 
-	Gunakan fungsi BETWEEN… AND…. pada WHERE untuk men-filter CreateDate 
-	Format syntax menggunakan subquery dan operator IN : 
SELECT *
FROM (subquery statement) AS name
WHERE Column Name IN (SELECT Statement);
",2107,1,4215
"SELECT …., COUNT(DISTINCT ….) AS ….
FROM (SELECT …., …., QUARTER(….) AS quarter
FROM customers
WHERE ….. BETWEEN “…..” AND “…..”) AS tabel_b
	WHERE …. IN (SELECT DISTINCT …. FROM orders_1
UNION
SELECT DISTINCT …. FROM orders_2)
	GROUP BY quarter
",2107,2,4216
"Gunakan nama final_df untuk menamakan segmen. 

  final_df['segmen'] = final_df['cluster'].map({ ",2829,1,8295
"Dan pada saat menjalankan fungsi, gunakan : 

new_final_df = menamakan_segmen(new_df,clusters) ",2829,2,8296
Input data yang ingin ditampilkan sesuai instruksi pada soal. ,2836,1,8349
"Pastikan kamu telah
* mengimport keempat dataset sesuai dengan urutan
* mengecek data secara sekilas dan melist seluruh nama kolom dikeempat dataframe
* menggabungkan keempat dataframe dengan concat
* mengecek informasi dataframe dan statistik deskriptifnya
* mengecek baris data yang tidak masuk akal nilai dan data yang tidak sesuai nilainya, jika ada buang data tersebut 
* transformasikan tipe data kolom yang tidak sesuai dengan tipe data yang seharusnya
* melakukan pengecekan kembali atas informasi dataframe dan statistik deskriptifnya, untuk memastikan data agar siap dianalisis lebih lanjut.
",2284,1,5627
"Penerapan
* pd.concat(...) dapat dilakukan dengan mengisi argumentnya dengan list of DataFrame
* untuk membuang data yang tidak masuk akal dan tidak sesuai nilainya, kondisi yang digunakan dalam pengecekan dapat dibalik tandanya ketika membuangnya.
* untuk mentransformasikan tipe data ke tipe data yang seharusnya kamu dapat menggunakan .astype(...) dan pd.to_datetime(...)
",2284,2,5628
"geom_col menerima argumen position yang bisa kita isi sendiri. Untuk kasus ini, kita akan mengisinya
dengan nilai position_dodge",2843,1,8381
"Pastikan kembali bahwa urutan penggunaan attribute sesuai dengan yang dicontohkan, yaitu .index, .columns, .loc[], dan .iloc[].",1686,1,8942
Gunakan fungsi print untuk menampilkan raw_data terlebih dahulu. ,2704,1,7850
Pastikan pemanggilan fungsi sudah sesuai: sort_values(by='[nama kolom]'),2386,1,5904
Gunakan fungsi print untuk menampilkan index nama kolom pada dataset seperti hasil di soal. ,2704,2,7851
"Pastikan bahwa kamu telah
* mengimport matplotlib.pyplot dan seaborn sebagai aliasnya masing-masing
* membuat histogram dengan plt berdasarkan data pada kolom Age untuk sejumlah bins sebanyak nilai yang unik dalam kolom Age tersebut
* membuat pairplot dari seaborn data dan atur hue-nya sesuai dengan instruksi
* menggunakan plt.show() untuk menampilkan kedua grafik.",2465,1,6972
"Gunakan data `df_load` dari proses sebelumnya, hapus kolom yang tidak diperlukan ('customerID','UpdatedAt'), kemudian simpan dalam dataframe baru (`cleaned_df`)",2171,1,5174
"#Remove the unnecessary columns customerID & UpdatedAt
cleaned_df = df_load.drop([___], axis=1)
print(cleaned_df.head())",2171,2,5175
Pastikan kamu telah menggungakan method .groupby() pada dataframe dataset dan mengambil kolom 'gmv' dan membuat agregasinya berupa penjumlahan 'sum' serta melakukan reset_index().,1453,1,6175
Pastikan format datetime yang digunakan adalah '%Y-%m-%d %H:%M:%S',2389,1,5953
"def get_json(api_url):
	response = requests.get(api_url)
	if response.status_code == 200:
		return json.loads(response.content.decode('utf-8'))
	else:
		return None",2393,2,5928
Pastikan kamu telah mengelompokkan dataset sesuai dengan brand-nya dan memilih kolom product_id berurutan dari besar ke kecil untuk diplotkan dengan jenis barchart bewarna hijau.,1506,1,6595
Perlu diingat bahwa attribute .columns hanya dapat digunakan pada pandas Dataframe.,1686,2,8943
"Kode lengkap adalah

#import library
import matplotlib.pyplot as plt
import seaborn as sns

# Seting: matplotlib and seaborn
sns.set_style('whitegrid')  
plt.style.use('fivethirtyeight')

#4. Data eksplorasi dengan visualisasi
#4a. Visualisasi Jumlah user dibagi ke dalam rentang usia (Age) menggunakan histogram (hist()) plot
plt.figure(figsize=(10, 5))
plt.hist(data['Age'], bins = data.Age.nunique())
plt.xlabel('Age')
plt.tight_layout()
plt.show()

#4b. Gunakan pairplot() dari seaborn (sns) modul untuk menggambarkan hubungan setiap feature.
plt.figure()
sns.pairplot(data)
plt.show()",2465,2,6973
Pastikan bahwa kamu telah melengkapi kode yang tidak lengkap dengan seperti yang dicontohkan.,2216,1,5417
Perbedaan untuk membentuk dataframe hasil pivoting adalah ada atau tidaknya keyword values yang dipasskan ke dalam method .pivot().,2216,2,5418
Perhatikan penulisan syntax dari kedua statement yang diberikan pada code editor.,1453,2,6176
"Dari table users 
join ke table orders yang sudah di-summary menjadi buyer dan dihitung jumlah_transaksi_beli gunakan buyer_id sebagai key join dengan user_id
join ke table orders yang sudah di-summary menjadi seller dan dihitung jumlah_transaksi_beli gunakan seller_id sebagai key join dengan user_id
filter jumlah_transaksi_beli",2427,1,6519
"select ...
from ...
inner join (select ..., count(1) as jumlah_transaksi_beli from ... group by 1) as buyer on ... = user_id
inner join (...) as seller on ... = ...
where ... >= ...
order by 1",2427,2,6520
Pastikan kamu telah memasukkan keyword argument quality pada plt.savefig().,1473,1,6331
"Statement lengkap untuk menyimpan gambar ke dalam format png dengan kualitas gambar 95% adalah

plt.savefig('monthly_gmv.png', quality=95)
",1473,2,6332
"- gunakan matplotlib.pyplot untuk membuat diagram
- nama fungsi yang digunakan untuk membuat pie chart
- coba ingat kembali fungsi yang digunakan untuk menampilkan diagram",2737,1,8115
"- matplotlib.pyplot
- class_freq.plot.pie() 
- plt.show()",2737,2,8116
Pastikan mengisi nilai i dengan kolom_numerik,2819,1,8297
"Untuk single line comment (perintah satu baris), kamu harus menempatkan tanda # sebelum menulis komentar. Sementara itu, untuk multiline comment (perintah lebih dari sebaris), kamu harus menempatkan tanda ''' dan kemudian ditutup dengan tanda yang serupa yaitu '''.",1401,1,7663
Pastikan kamu telah mengganti potongan kode yang diberikan dengan mengisi _ _ _ sesuai dengan urutannya .,1401,2,7664
" plt.figure(figsize=(6,4))  
    ax = sns.boxplot(x = 'cluster',y = i, data = df_final)  
    plt.title('\nBox Plot {}\n'.format(i), fontsize=12)  
    plt.show()  ",2819,2,8298
"Kode lengkap:

# Feature column: Year_Diff
df['Year_Diff']=df['Year_Last_Transaction']-df['Year_First_Transaction']

# Nama-nama feature columns
feature_columns = ['Average_Transaction_Amount', 'Count_Transaction', 'Year_Diff']

# Features variable
X = df[feature_columns] 

# Target variable
y = df['is_churn'] ",2621,2,7686
"Pastikan kamu telah
* mengimport library LogisticRegression dan confusion_matrix
* menginisiasi model sebagai logreg, melakukan fitting data dari porsi training, memprediksi X_test
* melakukan evaluasi dengan confusion_matrix dan mencetaknya.",2623,1,7689
Pastikan kamu dengan benar telah menghitung varians dari masing-masing datum dengan benar serta menghitung standar deviasinya sesuai dengan persamaan matematis yang diberikan.,1344,2,8325
"import matplotlib.pyplot as plt
from plotnine import *
ggplot(data=df_penduduk).draw()
plt.show()",2836,2,8350
"+ aes(x='NAMA KABUPATEN/KOTA', y='JUMLAH')
+ geom_col()
+ coord_flip()",2839,2,8365
Ketik perintah inspect dengan input variable mba.,125,1,8865
"Kombinasikan fungsi inspect, subset dan operator %in% terhadap variable mba. Persis seperti contoh pada Lesson.",126,1,8866
"confusion_matrix_df = pd.DataFrame((confusion_matrix(___, ___)), ('No churn', 'Churn'), ('No churn', 'Churn'))

plt.figure()
heatmap = sns.heatmap(confusion_matrix_df, annot=True, annot_kws={'size': 14}, fmt='d', cmap='YlGnBu')
heatmap.yaxis.set_ticklabels(heatmap.yaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)
heatmap.xaxis.set_ticklabels(heatmap.xaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)

plt.title('Confusion Matrix for Testing Model\n(Random Forest)\n', fontsize = 18, color = 'darkblue')
plt.ylabel('True label', fontsize = 14)
plt.xlabel('Predicted label', fontsize = 14)
plt.show()",2249,1,5239
Pengecekan missing value adalah pengecekan jumlah missing value di keseluruhan data.,2467,1,6974
Lengkapi ___ sesuai dengan hasil yang dicontohkan pada soal. ,2705,1,7852
Gunakan .corr().abs(),1708,1,4989
masukan df pada bagian yang kosong,1710,1,4990
"",2293,1,5536
Perhatikan tanda () jangan sampai salah atau kurang. ,2705,2,7853
Rubah nomor cluster pada contoh soal.,54,1,8907
Pastikan kembali bahwa keyword aggfunc yang digunakan untuk membentuk dua pivot tabel adalah nilai rata-rata dan nilai median masin-masing kelas untuk kedua mata pelajaran.,2217,1,5419
"Pastikan untuk mean dan median harus dinyatakan sebagai tipe data string, yaitu aggfunc='mean' dan aggfunc='median'.",2217,2,5420
Pastikan parameter yang dimasukkan adalah api_url,2393,1,5927
Perhatikan bahwa property .shape[0] memberikan jumlah baris dari raw_data.,2691,1,7870
Pastikan bahwa untuk membuat pandas series harus menggunakan numpy array 1D.,1690,1,8944
Pastikan bahwa untuk membuat pandas dataframe harus menggunakan numpy array 2D.,1690,2,8945
Pastikan kamu telah mengentrikan semua argument fungsi seperti yang diminta dengan mengisi potongan kode yang tidak lengkap yang diberikan dalam bentuk _ _ _ di code editor.,1444,1,9037
Pastikan kamu telah menggunakan fungsi yang sesuai dengan item-item permintaan Andra.,1444,2,9038
Pastikan kamu telah menyesuaikan kustomisasi grafik sesuai dengan grafik yang ditampilkan.,1506,2,6596
"Kombinasikan fungsi inspect, subset dan operator %in% terhadap variable mba. Persis seperti contoh pada Lesson.",127,1,8867
"Sekarang kamu akan menggunakan perintah plt.plot(x, y) dengan x merupakan data dalam arah sumbu x dan y adalah data dalam arah sumbu y.",1454,1,6177
Data yang digunakan pada sumbu x dan y masing-masingnya adalah kolom 'order_month' dan 'gmv' pada dataset monthly_amount.,1454,2,6178
Pastikan bahwa kamu telah menuliskan syntax untuk menganotasi multi-line chart  seperti yang diberikan contohnya. Perhatikan juga dengan saksama argument dan keyword argument yang digunakan pada plt.annotate().,1489,1,6643
"Potongan kode untuk anotasi multi-line chart ini diberikan oleh:

# Anotasi pertama
plt.annotate('GMV other meningkat pesat', xy=(5, 900000000), 
             xytext=(4, 1700000000), weight='bold', color='red',
             arrowprops=dict(arrowstyle='fancy',
                             connectionstyle=""arc3"",
                             color='red'))
# Anotasi kedua
plt.annotate('DKI Jakarta mendominasi', xy=(3, 3350000000), 
             xytext=(0, 3700000000), weight='bold', color='red',
             arrowprops=dict(arrowstyle='->',
                             connectionstyle=""angle"",
                             color='red'))",1489,2,6644
"Pastikan untuk memplotkannya kamu telah mengelompokkan dataset berdasarkan kolom order_date dan brand, kemudian kamu memilih kolom quantity. Selanjutnya dichaining dengan penjumlahan dan unstack.",1505,1,6677
Pastikan kamu telah mengimport library pandas sebagai aliasnya pd.,1682,1,4632
Pastikan kamu juga telah mengimport library numpy sebagai aliasnya np di baris berikutnya.,1682,2,4633
"Gunakan tabel orders
Ubah created_at menjadi tahun_bulan
gunakan datediff untuk menghitung selisih hari dari created_at sampai paid_at
ulangi 3 kali untuk menghitung avg, min dan max 
Filter paid_at yang tidak kosong untuk memastikan perhitungan sudah benar",2428,1,6521
"select EXTRACT(YEAR_MONTH ... ... ) as tahun_bulan, ... as jumlah_transaksi, 
avg(...) as avg_lama_dibayar,
min(...) min_lama_dibayar,
max(...) max_lama_dibayar
from orders
where paid_at ...
group by 1
order by 1",2428,2,6522
Pastikan untuk kostumisasi grafik bahwa kamu harus mereferensi pada grafik yang ditampilkan.,1505,2,6678
Ketik langsung perintah yang telah diberikan pada akhir baris live code editor,57,1,8909
"Pastikan kamu telah menggunakan keempat attribute yang dicontohnya sesuaii urutan, yaitu .info(), .shape, .dtypes, dan .astype().",1684,1,4638
"Untuk diingat, attribute .info() hanya dapat kamu gunakan untuk dataframe saja.",1684,2,4639
"Pastikan telah menempatkan attribute .copy(), .to_list(), dan .unique() sesuai dengan urutannya seperti yang dicontohkan.",1685,1,4640
Perlu untuk diingat bahwa attribute .to_list() dan .unique() hanya dapat kamu gunakan untuk pandas Series.,1685,2,4641
"Untuk membuat series dapat dilakukan dengan menggunakan pd.Series yang diisikan dengan sebuah list, serta data frame dapat dibuat dengan pd.DataFrame.",1688,1,4644
"Gunakan x_train & y_train untuk mentrain model, kemudian simpan sebagai gbt_model.",2231,1,5240
"#Train the model
gbt_model = GradientBoostingClassifier().fit(___, ___)
print(gbt_model)",2231,2,5241
"Gunakan gbt_model untuk membuat prediksi di data testing (y_test_pred) melalui x_test.
Kemudian hitung classification report & confusion matrix menggunakan y_test & y_test_pred.",2233,1,5466
Masukan seperti perintah disoal,1711,1,4991
"y_test_pred = ___.predict(___)
print('Classification Report Testing Model (Gradient Boosting):')
print(classification_report(___, ___))

",2233,2,5467
Ketikkan potongan program sesuai dengan screenshot yang sudah diberikan,2254,1,5332
"Melting suatu dataframe hanya dapat dilakukan pada dataframe yang telah dipivot. Silakan kamu pivot terlebih dahulu data dengan index='kelas', columns='pelajaran', values='nilai', aggfunc='mean' dan kemudian reset index-nya.",2218,1,5421
Lakukanlah melting secara default dan dengan menggunakan id_vars seperti yang telah dicontohkan.,2218,2,5422
"Kodenya adalah

print(data.isnull().sum().sum())",2467,2,6975
Nama library dan nama fungsi ada di penjelasan pada bagian terakhir. Coba baca penjelasan lebih teliti.,2540,1,7384
"Pastikan kamu telah 
(1) mengelompokkan dataset_top5brand_dec berdasarkan kolom brand dan product_id, kemudian memilih kolom quantity
(2) memfilter dari dataset_top5brand_dec_per_product sesuai dengan kondisi yang dinyatakan  dan kemudian mengurutkannya berdasarkan quantity dari yang terbesar ke yang terkecil.",1507,1,6419
"Pastikan kamu telah
(1) membuat referensi pengurutan dengan mengelompokkan berdasarkan brand dan memilih kolom product_id, kemudian mengurutkannya dari yang terbesar ke yang terkecil.
(2) memplotkan grafik stacked-bar chart dari dataset_top5brand_dec_per_product berdasarkan brand dan quantity_group, kemudian memilih kolom product_id dan mengurutkan dari nilai terbesar ke nilai terkecil.
(3) menyesuaikan kustomisasi grafik dengan grafik yang telah diperlihatkan. ",1507,2,6420
Pastikan parameter yang dimasukkan adalah api_url,2380,1,5929
"def get_json(api_url):
	response = requests.get(api_url)
	if response.status_code == 200:
		return json.loads(response.content.decode('utf-8'))
	else:
		return None",2380,2,5930
"",2674,1,7763
"",2395,1,6086
Ketik langsung perintah yang telah diberikan pada tugas di bagian akhir baris live code editor,57,2,8910
Pilihlah seluruh kolom pada tabel_A dan tabel_B.,2061,1,9039
"Jangan lupa dengan syntaxnya adalah SELECT * FROM nama_tabel, dengan nama_tabel adalah nama tabel yang akan diquery.",2061,2,9040
"library(dplyr)
library(ggplot2)

tabel <- read.csv(""https://dqlab-dataset.s3-ap-southeast-1.amazonaws.com/lo5_m01_mp01.csv"") %>%
  mutate(Laki.laki = -Laki.laki) %>%
  arrange(desc(Kelompok.Usia))

plt <- ggplot(data = tabel,
       aes(x = factor(tabel$Kelompok.Usia, 
                      levels = tabel$Kelompok.Usia))) +
  geom_bar(stat = ""identity"", 
           width = 0.8,
           fill = ""blue"",
           aes(y = Laki.laki)) +
  geom_text(aes(x = Kelompok.Usia,
                y = Laki.laki + 27,
                label = abs(Laki.laki)),
            colour = ""white"") +
  geom_bar(stat = ""identity"",
           width = 0.8,
           fill = ""orange"",
           aes(y = Perempuan)) +
  geom_text(aes(x = Kelompok.Usia,
                y = Perempuan - 27,
                label = Perempuan),
            colour = ""white"") +
  ylim(-550, 550) +
  coord_flip() +
  annotate(""text"", x=0.5, y=-20, hjust=1,
           label=""Laki-laki"", colour=""blue"") +
  annotate(""text"", x=0.5, y=20, hjust=0,
           label=""Perempuan"", colour=""orange"") +
  labs(colour = """", x = """", y = """",
       title = ""Perbandingan Jumlah Karyawan Laki-laki dan Perempuan\nBerdasarkan Kelompok Usia"") +
  theme(axis.text = element_text(size = 12, face=""bold""),
        axis.text.x = element_blank(),
        axis.ticks = element_blank(),
        plot.title = element_text(hjust = 0, size = 16),
        panel.background = element_rect(fill = ""white""),
        legend.position = ""bottom"")

options(repr.plt.width = 10, repr.plt.height = 2)
plt",2329,2,8824
"Dari table orders join ke table users untuk mendapatkan nama pembeli.
Gunakan group by dan having untuk memfilter sesuai petunjuk.
Untuk membedakan penggunaan variabel kodepos, gunakan orders.kodepos.
Group by menggunakan user_id dan nama_user walaupun variabel user_id tidak dipakai, karena nama_user saja belum tentu unik",2425,1,6846
"select ...
from orders
inner join ....
group by ....
having count(1) >= ... and count(1) = count(distinct orders.kodepos)
order by 2 desc",2425,2,6847
"Pastikan kamu telah  menggagregasi data_per_product_top5brand_dec dengan kolom quantity dan gmv menggunakan jumlah, serta kolom item_price menggunakan median.",2403,1,6717
Pastikan kamu menggunakan scatter plot untuk grafik yang akan divisualkan dan menggunakan kolom dataset yang sesuai serta mengkustomisasi tampilan sesuai dengan grafik yang dicontohkan.,2403,2,6718
"",2158,1,4537
"Pastikan bahwa :
* sebelum imputation tentukan terlebih dahulu jumlah missing value tiap kolom/feature dan jumlah keseluruhan missing value dalam dataset
* proses imputasi dilakukan denga mengisi nilai missing value dengan nilai median masing-masing kolom/feature
* setelah imputation cek kembali  jumlah missing value tiap kolom/feature dan jumlah keseluruhan missing value dalam dataset",1565,1,6940
"Untuk proses imputasi kamu dapat menggunakan kode berikut

dataset.fillna(dataset.mean(), inplace = True)",1565,2,6941
"Pastikan kamu telah
* mengimpor LabelEncoder dari sklearn.preprocessing
* menginisialisasi LabelEncoder sebagai variabel LE
* melakukan method fit_transform dari varibel LE untuk data bertipe pandas object atau string",2464,1,6942
"Kode lengkap untuk konversi ini adalah

import numpy as np
from sklearn.preprocessing import LabelEncoder
# Convert feature/column 'Month'
LE = LabelEncoder()
dataset['Month'] = LE.fit_transform(dataset['Month'])
print(LE.classes_)
print(np.sort(dataset['Month'].unique()))
print('')

# Convert feature/column 'VisitorType'
LE = LabelEncoder()
dataset['VisitorType'] = LE.fit_transform(dataset['VisitorType'])
print(LE.classes_)
print(np.sort(dataset['VisitorType'].unique()))",2464,2,6943
Ketik perintah sesuai dengan contoh pada code editor.,133,1,8869
"Gunakan gbt_model untuk membuat prediksi di data training (y_train_pred) melalui x_train.
Kemudian hitung classification report & confusion matrix menggunakan y_train & y_train_pred.",2232,1,5242
"y_train_pred = ___.predict(___)
print('Classification Report Training Model (Gradient Boosting):')
print(classification_report(___, ___))

",2232,2,5243
Ikuti perintah yang ada pada soal,1712,1,4992
"Gunakan rdf_model untuk membuat prediksi di data testing (y_test_pred) melalui x_test.
Kemudian hitung classification report & confusion matrix menggunakan y_test & y_test_pred.",2181,1,5468
"y_test_pred = ___.predict(___)
print('Classification Report Testing Model (Random Forest Classifier):')
print(classification_report(___, ___))
",2181,2,5469
"-	Gunakan fungsi LEFT( ) untuk mengekstrak 3 karakter awal dari productCode
-	Gunakan fungsi COUNT( ) di statement SELECT untuk menghitung total_order dan fungsi SUM( ) untuk menghitung total_penjualan
-	Gunakan “GROUP BY” untuk mengelompokkan total_penjualan berdasarkan kolom “quarter”. 
-	Gunakan ORDER BY untuk mengurutkan data
-	Format syntax menggunakan subquery: 
SELECT *
FROM (subquery statement) AS name
",2108,1,4545
"SELECT …., COUNT(DISTINCT…) AS …, SUM(…) AS …
FROM ( SELECT …, …, …, …, LEFT(…,…) AS categoryID
	 FROM orders_2
	 WHERE … = “…”) tabel_c
GROUP BY …
ORDER BY …
",2108,2,4546
"1. library(tidyr)
2. names_to = ""kondisi""",2362,1,5849
"Pastikan kamu telah 
* mengimport train_test_split dari sklearn.model_selection import, LogisticRegression dari sklearn.linear_model
* mendeklarasikan data ke dalam varibel independen X (yang diperoleh dengan tidak memasukkan kolom/feature 'Ad Topic Line', 'City', 'Country', 'Timestamp', dan 'Clicked on Ad') dan dependen y (kolom Clicked on Ad)
* mensplit X dan y ke dalam training dan testing dataset dengan perbandingan 80:20 dan random_state = 42
* membuat classifier LogisticRegression() sebagai logreg yang  kemudian fit classifier ke X_train dan predict dengan X_test
* mencetak evaluation score dari training dan testing dataset

",1600,1,6976
"Ketikkan ""TRUE"" apabila Anda sudah siap untuk mengerjakan project ini dan belajar bersama DQLab",2255,1,5333
"",2295,1,5538
"Copy paste code pada Lesson ke dalam code editor, dan tambahkan sse setelah itu.",76,1,8913
"Pastikan proses melting yang dilakukan dengan pd.melt menggunakan keyword argument seperti yang telah dicontohkan, yaitu value_vars dan id_vars.",2219,1,5423
"Secara umum pd.melt akan menerima keyword arguments berupa id_vars, value_vars, var_name,  value_name seperti yang dinyatakan berikut
pd.melt(nama_dataframe, id_vars=___, value_vars=___, var_name=___, value_name=___)",2219,2,5424
"1. library(cowplot)
2. image = ""https://storage.googleapis.com/dqlab-dataset/assets/images/logo-dqlab.png""",2374,1,9041
"Jawab lengkap langkah ke-6 ini adalah

#import library
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression

#6.Lakukan pemodelan dengan Logistic Regression, gunakan perbandingan 80:20 untuk training vs testing
print(""\n[6] Lakukan pemodelan dengan Logistic Regression, gunakan perbandingan 80:20 untuk training vs testing"")
#6a.Drop Non-Numerical (object type) feature from X, as Logistic Regression can only take numbers, and also drop Target/label, assign Target Variable to y.   
X = data.drop(['Ad Topic Line','City','Country','Timestamp','Clicked on Ad'], axis = 1)
y = data['Clicked on Ad']

#6b. splitting the data
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.20, random_state = 42)

#6c. Modelling
# Call the classifier
logreg = LogisticRegression()
# Fit the classifier to the training data
logreg = logreg.fit(X_train,y_train)
# Prediksi model
y_pred = logreg.predict(X_test)

#6d. Evaluasi Model Performance
print(""Evaluasi Model Performance:"")
print(""Training Accuracy :"", logreg.score(X_train, y_train))
print(""Testing Accuracy :"", logreg.score(X_test, y_test))",1600,2,6977
Pastikan urutan penulisan terutama pada list_key dan list_value sudah sesuai dengan yang diperintahkan. Ingat panjang list_key dan list_value harus sama.,1407,1,6207
"Gunakanlah perintah dict(zip(list_key, list_value)) untuk merubah dua list tadi menjadi dict.",1407,2,6208
"Library : factoextra
Fungsi : fviz_eig()
Argumen / parameter : addlabels = TRUE",2540,2,7385
Panggil data seperti yang ditampilkan pada soal dengan fungsi describe().,2706,1,7854
"Pastikan bahwa kamu telah 
* mengimport confusion_matrix, classification_report dari sklearn.metrics
* melakukan perhitungan untuk confusion matrix dan classification report berdasarkan y_test dan y_pred menggunakan metrik yang telah diimport",2468,1,6980
Lengkapi coding yang kosong sesuai dengan pertanyaan pada soal. ,2706,2,7855
Pastikan kamu sudah mengentrikan pasangan key: value dictionary sesuai dengan yang dicontohkan baik untuk series dan dataframe.,1689,1,4646
"Pastikan kamu dengan benar dan teliti mengetikkan dan memahami syntax yang ditulis di code editor melalui contoh yang telah diberikan. 
Melalui plotting kali ini ada dua poin yang perlu diperhatikan:
(1) Untuk membreakdown berdasarkan propinsi, kamu harus mengelompokkan dataset berdasarkan kolom order_month dan  province, ketika mengetikkan  .plot() masukkanlah keyword argument cmap.
(2) Keyword lainnya yang belum kamu temui pada bagian sebelumnya pada plt.legend() diberikan di sini, diantaranya yaitu:  title, fontsize, dan title_fontsize.",1486,1,6681
"Pastikan kamu telah menghitung
* number_of_missing_values_city sebagai pengurangan antara length_city dan count_city
* float_of_missing_values_city sebagai rasio number_of_missing_values_city dengan length_city
* pct_of_missing_values_city sebagai persentase float_of_missing_values_city 
dan kemudian mencetak outputnya.
",1519,1,7522
"Analogi pengerjaan pada kolom city, maka untuk kolom product_id pastikan bahwa kamu telah menghitung
* number_of_missing_values_product_id sebagai pengurangan antara length_product_id dan count_product_id
* float_of_missing_values_product_id sebagai rasio number_of_missing_values_product_id dengan length_product_id
* pct_of_missing_values_product_id sebagai persentase float_of_missing_values_product_id 
dan kemudian mencetak outputnya.",1519,2,7523
"confusion_matrix_df = pd.DataFrame((confusion_matrix(___, ___)), ('No churn', 'Churn'), ('No churn', 'Churn'))

plt.figure()
heatmap = sns.heatmap(confusion_matrix_df, annot=True, annot_kws={'size': 14}, fmt='d', cmap='YlGnBu')
heatmap.yaxis.set_ticklabels(heatmap.yaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)
heatmap.xaxis.set_ticklabels(heatmap.xaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)

plt.title('Confusion Matrix for Training Model\n(Gradient Boosting)', fontsize = 18, color = 'darkblue')
plt.ylabel('True label', fontsize = 14)
plt.xlabel('Predicted label', fontsize = 14)
plt.show()",2250,1,5244
"confusion_matrix_df = pd.DataFrame((confusion_matrix([...], [...])), ('No churn', 'Churn'), ('No churn', 'Churn'))

plt.figure()
heatmap = sns.heatmap(confusion_matrix_df, annot=True, annot_kws={'size': 14}, fmt='d', cmap='YlGnBu')
heatmap.yaxis.set_ticklabels(heatmap.yaxis.get_ticklabels(), rotation=0, ha='right', fontsize=14)
heatmap.xaxis.set_ticklabels(heatmap.xaxis.get_ticklabels(), rotation=0, ha='right', fontsize=14)

plt.title('Confusion Matrix for Testing Model\n(Gradient Boosting)', fontsize=18, color='darkblue')
plt.ylabel('True label', fontsize=14)
plt.xlabel('Predicted label', fontsize=14)
plt.show()",2251,1,5250
Masukan perintah diatas setelah import,1713,1,4993
Gunakan hasil dari fungsi names yang sudah dijalankan untuk menjawab pertanyaan yang sudah diberikan ,2266,1,5470
"Gunakan kasus_total, meninggal_persen, dan sembuh_persen",2266,2,5471
"Pastikan kamu telah
* melakukan slicing pada Index dan kemudian mengambil data pada dataframe unstack_city_province untuk kolom order 
* downsampling secara bulanan dengan mengambil nilai rata-ratanya",2286,1,5635
"Untuk
* slicing kamu dapat menggunakan attribute pd.IndexSlice dan kemudian digunakan untuk mengambil kolom order
* proses downsampling dengan menghitung rata-rata kamu dapat menggunakan nama_dataframe.resample('M').mean()",2286,2,5636
"",2296,1,5541
"Jawab lengkapnya adalah

# Import library
from sklearn.metrics import confusion_matrix, classification_report

#7. Print Confusion matrix dan classification report
print(""\n[7] Print Confusion matrix dan classification report"")

#apply confusion_matrix function to y_test and y_pred
print(""Confusion matrix:"")
cm = confusion_matrix(y_test, y_pred)
print(cm)

#apply classification_report function to y_test and y_pred
print(""Classification report:"")
cr = classification_report(y_test, y_pred)
print(cr)",2468,2,6981
"Nama library sama seperti pada chapter sebelum ini, ada di bagian penjelasan. 
Ikuti syntax seperti pada penjelasan di chapter ini.",2541,1,7386
Copy paste perintah di Lesson ke code editor untuk mengganti bagian teks […].,82,1,8916
"Pastikan kamu dengan benar telah menuliskan keyword argument pada plt.grid sesuai dengan yang dicontohkan, yaitu warna, style garis, dan tebal garis.",1465,1,6089
gunakan pd.json_normalize(get_json([nama variable]) untuk mendapatkan dataframe covid19,2381,1,5932
"Statement lengkap untuk mengkustomisasi grid yaitu:

plt.grid(color='#BDAF8E', linestyle=':', linewidth=0.5)",1465,2,6090
Pastikan kamu mengambil data khusus untuk propinsi DKI Jakarta saja pada kurun waktu kuartal keempat 2019.,1490,1,6649
"Kamu dapat menerapkan teknik filtering seperti yang diberikan oleh kode berikut

dataset_dki_q4 = dataset[(dataset['province']=='DKI Jakarta') & (dataset['order_month'] >= '2019-10')]",1490,2,6650
"Pastikan bahwa kamu telah
(1) membuat variabel gmv_per_city_dki_q4 berdasarkan dataset dataset_dki_q4 yang dikelompokkan berdasarkan city.
(2) mnggunakan plt.pie() untuk membuat pie chart dengan argument gmv_per_city_dki_q4['gmv'] dan keyword argument seperti yang ditunjukkan.",1491,1,6651
"Kode lengkap untuk membuat pie chart persentase GMV di propinsi DKI untuk masing-masing kota pada kuartal keempat 2019:

import matplotlib.pyplot as plt
gmv_per_city_dki_q4 = dataset_dki_q4.groupby('city')['gmv'].sum().reset_index()
plt.figure(figsize=(6,6))
plt.pie(gmv_per_city_dki_q4['gmv'], labels = gmv_per_city_dki_q4['city'],autopct='%1.2f%%')
plt.title('GMV Contribution Per City - DKI Jakarta in Q4 2019',loc='center',pad=30, fontsize=15, color='blue')
plt.show()",1491,2,6652
"Kode lengkap untuk pada bagian ini:

import matplotlib.pyplot as plt
plt.clf()
dataset.groupby(['order_month','province'])['gmv'].sum().unstack().plot(cmap='Set1')
plt.title('Monthly GMV Year 2019 - Breakdown by Province',loc='center',pad=30, fontsize=20, color='blue')
plt.xlabel('Order Month', fontsize = 15)
plt.ylabel('Total Amount (in Billions)',fontsize = 15)
plt.grid(color='darkgray', linestyle=':', linewidth=0.5)
plt.ylim(ymin=0)
labels, locations = plt.yticks()
plt.yticks(labels, (labels/1000000000).astype(int))
plt.legend(loc='lower center', bbox_to_anchor=(0.5, -0.5), shadow=True, ncol=3, title='Province',fontsize=9, title_fontsize=11)
plt.gcf().set_size_inches(10, 5)
plt.tight_layout()
plt.show()",1486,2,6682
"Pastikan kamu telah 
* mengimport library mean_squared_error, mean_absolute_error dari  sklearn.metrics dan numpy sebagai aliasnya yaitu np.
* menghitung MSE, MAE dengan menggunakan mean_squared_error dan mean_absolute_error , serta RMSE dengan mengunakan np.sqrt dari hasil perhitungan MSE.
* membuat scatter plot antara y_test dan y_pred.

Perhitungan metriks selalu menggunakan nilai y_test yang diketahui tehdapat hasil prediksi y_pred.",1587,1,6858
"Kode lengkapnya yaitu:

from sklearn.metrics import mean_squared_error, mean_absolute_error  
import numpy as np
import matplotlib.pyplot as plt 

#Calculating MSE, lower the value better it is. 0 means perfect prediction
mse = mean_squared_error(y_test, y_pred)
print('Mean squared error of testing set:', mse)
#Calculating MAE
mae = mean_absolute_error(y_test, y_pred)
print('Mean absolute error of testing set:', mae)
#Calculating RMSE
rmse = np.sqrt(mse)
print('Root Mean Squared Error of testing set:', rmse)

#Plotting y_test dan y_pred
plt.scatter(y_test, y_pred, c = 'green')
plt.xlabel(""Price Actual"")
plt.ylabel(""Predicted value"")
plt.title(""True value vs predicted value : Linear Regression"")
plt.show()",1587,2,6859
"Library  : factoextra
Argumen / parameter : repel = TRUE",2541,2,7387
Input data numerik harus True agar bisa menampilkan angka seperti pada soal. ,2707,1,7856
"Lengkapi bagian __ sesuai dengan urutan perintah soal : 

raw_data[['Harga', 'Pendapatan']].sum()",2707,2,7857
Lengkapi kode pada konsol seperti pada soal.,2782,1,8207
"Tambahkan variable mba pada code editor, diisi dari hasil eksekusi function apriori. Setelah itu tampilkan isi mba dengan function inspect.",134,1,8871
"Gunakan x_train & y_train untuk mentrain model, kemudian simpan sebagai rdf_model.",2183,1,4587
"#Train the model
xgb_model = XGBClassifier().fit([...], [...])
print(xgb_model)",2183,2,4588
Bandingkan performa dari training dan testing,2187,1,5251
"",2879,1,8917
"Gunakan xgb_model untuk membuat prediksi di data training (y_train_pred) melalui x_train.
Kemudian hitung classification report & confusion matrix menggunakan y_train & y_train_pred.",2184,1,4591
"y_train_pred = [...].predict([...])
print('\033[1m' + 'Classification Report\033[0m Training Model (XG Boost) : \n',classification_report([...], [...]))

confusion_matrix_df = pd.DataFrame((confusion_matrix([...], [...])), ('No churn', 'Churn'), ('No churn', 'Churn'))
heatmap = sns.heatmap(confusion_matrix_df, annot=True, annot_kws={""size"": 14}, fmt=""d"", cmap=""YlGnBu"")
heatmap.yaxis.set_ticklabels(heatmap.yaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)
heatmap.xaxis.set_ticklabels(heatmap.xaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)

plt.title('Confusion Matrix for Training Model\n(XG Boost)\n', fontsize = 18, color = 'darkblue')
plt.ylabel('True label', fontsize = 14)
plt.xlabel('Predicted label', fontsize = 14)",2184,2,4592
"Gunakan xgb_model untuk membuat prediksi di data testing (y_test_pred) melalui x_test.
Kemudian hitung classification report & confusion matrix menggunakan y_test & y_test_pred.",2185,1,4593
Pastikan dalam penulisan nama kolom sudah seperti yang dijelaskan di soal ['_____'],2708,2,7859
"Pastikan kamu telah
* mengimport confusion_matrix dan classification_report dari sklearn.metrics
* mencetak akurasi training dan testing dengan menggunakan method .score dari variabel model
* mencetak confusion matrix
* mencetak classification report",1575,1,6948
Pastikan bahwa kamu telah mengcreate pandas series  serta menerapkan interpolasi melalui penggunaan .interpolate() pada series yang telah kamu buat.,2155,1,4734
"y_test_pred = [...].predict([...])
print('\033[1m' + 'Classification Report\033[0m Testing Model (XG Boost) : \n',classification_report([...], [...]))

confusion_matrix_df = pd.DataFrame((confusion_matrix([...], [...])), ('No churn', 'Churn'), ('No churn', 'Churn'))
heatmap = sns.heatmap(confusion_matrix_df, annot=True, annot_kws={""size"": 14}, fmt=""d"", cmap=""YlGnBu"")
heatmap.yaxis.set_ticklabels(heatmap.yaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)
heatmap.xaxis.set_ticklabels(heatmap.xaxis.get_ticklabels(), rotation=0, ha='right', fontsize = 14)

plt.title('Confusion Matrix for Testing Model\n(XG Boost)\n', fontsize = 18, color = 'darkblue')
plt.ylabel('True label', fontsize = 14)
plt.xlabel('Predicted label', fontsize = 14)",2185,2,4594
Gunakan hasil dari algoritma Logistic Regression,2187,2,5252
"1. library(ggridges)",2364,1,5851
"Hitung value_count() kolom `churn` dari data `df_load`, dan buat pie chart nya menggunakan pie()....ssssss",2167,1,5142
"fig = plt.figure()
ax = fig.add_axes([0,0,1,1])
ax.axis('equal')
labels = [___]
churn = df_load.Churn.value_counts()
ax.pie(___, labels = ___,autopct='%.0f%%')
plt.show()",2167,2,5143
"Pastikan kamu menggunakan pd.to_datetime untuk merubah ke format datetime, dengan format datetime yang digunakan adalah '%Y-%m-%d %H:%M:%S'",2382,1,5933
"Nama fungsi ada pada sub chapter sebelumnya. 
Periksa lebih teliti hasil dari syntax yang ditulis pada sub chapter sebelumnya, korelasi antar atribut sensoris terdapat disitu.",2544,1,7392
library(nama_paket),2337,1,5751
"Pada [...1...] masukkan tanggal 27 April 2018 dengan format angka hari, bulan dan tahun (dd-M-yyyy). Untuk [...2...] gunakan gabungan function as.numeric dan difftime sesuai contoh pada Lesson.",422,1,6923
"Pastikan kamu telah mengkonversi tipe data string(str) ke list, tuple, dan set.",1406,1,6257
"",2297,1,5542
"",2298,1,5543
Perhatikan penggunaan tanda (...) pada fungsi print untuk mencetak perubahan tipe data dari variabel text. ,1406,2,6258
"Untuk membuat bar chart pastikan bahwa kamu telah mengelompokkan dataset_dki_q4 berdasarkan city, terapkan agregasi, urutkan nilainya dari terbesar ke yang terkecil dan kemudian gunakan .plot() dengan keyword argument terpenting yaitu kind. Keyword argument color untuk estetika saja.",1492,1,6653
"Baris-baris kode keseluruhan untuk menampilkan barchart sesuai dengan grafik yang telah ditampilkan yaitu 

import matplotlib.pyplot as plt
plt.clf()
dataset_dki_q4.groupby('city')['gmv'].sum().sort_values(ascending=False).plot(kind='bar', color='green')
plt.title('GMV Per City - DKI Jakarta in Q4 2019',loc='center',pad=30, fontsize=15, color='blue')
plt.xlabel('City', fontsize = 15)
plt.ylabel('Total Amount (in Billions)',fontsize = 15)
plt.ylim(ymin=0)
labels, locations = plt.yticks()
plt.yticks(labels, (labels/1000000000).astype(int))
plt.xticks(rotation=0)
plt.show()",1492,2,6654
"Fungsi : fviz_pca_var(chocolates_pca, repel = TRUE)
Korelasi atribut sensoris : 
- ""sticky""
- ""crunchy""",2544,2,7393
Syntax terdapat di penjelasan. Periksa kembali lebih teliti lagi bagian penjelasan.,2545,1,7394
"fviz_pca_biplot(chocolates_pca, repel = TRUE, title = ""Peta Persepsi Produk Cokelat Komersial"")",2545,2,7395
"<p>Kombinasikan fungsi <strong>inspect</strong>, <strong>subset</strong>, operator <strong>%in%</strong> dan operator | terhadap variable <strong>mba</strong>. Penambahan inspect jika mengacu kepada contoh pada Lesson.</p>",135,1,8872
Pastikan kamu telah menghitung quantile statistics untuk kolom quantity.,1523,1,7524
"",2524,1,6998
"Membuat dataframe dengan pandas dapat kamu lakukan dengan menerapkan pd.DataFrame, dengan isinya berupa 
* data yang dapat dibentuk dari list of list
* index merupakan nama dari masing-masing baris pada dataframe nantinya
* columns merupakan nama dari masing-masing kolom dataframe nantinya.
Perlu diingat bahwa panjang index dan kolom harus sesuai dengan ukuran data yang diinputkan ke dalam pd.DataFrame. ",1688,2,4645
"Penting untuk diingat dalam menggunakan dictionary untuk
* series: key-nya akan digunakan sebagai index, dan value-nya harus berupa nilai tunggal sebagai isi dari series.
* dataframe: key-nya akan secara otomatis jadi columns, serta value-nya akan menjadi isi dari dataframe yang dapat dibuat dari tipe data container atau array numpy (jika panjang dari masing-masing value tidak sama maka kekosongan akan diisi oleh np.nan. Untuk index dari data frame akan dibuat secara otomatis dari 0 (nol) hingga panjang value terpanjang - 1.",1689,2,4647
Pastikan kamu telah menuliskan syntax untuk memprofil dataframe sesuai dengan yang dicontohkan.,1527,1,7238
pastikan kode yang kamu ketikkan sudah benar ,2510,1,6924
afagga,2510,2,6925
"Pastikan kamu telah 
(1) memplotkan histogram dari product dengan brand top 5 berdasarkan median dari product_id untuk kolom item_price
(2) histogram memiliki 10 bins yang distacked.",1508,1,6427
"lakukan looping untuk semua kolom yang ada di data `cleaned_df`, dimana dalam looping tersebut gunakan if apabila kolom berbentuk number maka skip dan lanjutkan untuk kolom yang valuenya string dan rubah ke numeric menggunakan `LabelEncoder()`",2172,1,5188
"#Convert all the non-numeric columns to numerical data types
for column in ___.columns:
    if ___[column].dtype == np.number: continue
    ___[column] = LabelEncoder().fit_transform(___[column])
print(cleaned_df.___)",2172,2,5189
"",2299,1,5544
"",2300,1,5545
Untuk menampilkan data dipanggil dari variabel raw_data. ,2708,1,7858
"Kode: 

pandas_profiling.ProfileReport(retail_raw)",1527,2,7239
Perlu diperhatikan setiap tanda baca yang diketikkan sesuai dengan contoh yang diberikan. ,2332,1,8827
"Tambahkan argumen as = ""parsed"" dan simplifyVector = TRUE pada function content",2262,1,5429
Simpan hasil pekerjaan anda sebagai cov_id_raw,2262,2,5430
"library(dplyr)
library(ggplot2)

tabel <- read.csv(""https://dqlab-dataset.s3-ap-southeast-1.amazonaws.com/lo5_m01_mp02.csv"") %>%
  mutate(Bulan = substr(Bulan, 1, 3),
        Karyawan.A = Karyawan.A/1000,
        Karyawan.B = Karyawan.B/1000,
        Karyawan.C = Karyawan.C/1000,
        Karyawan.D = Karyawan.D/1000,
        Karyawan.E = Karyawan.E/1000)

plt <- ggplot(data = tabel,
       aes(x = factor(tabel$Bulan, levels = tabel$Bulan))) +
  geom_line(aes(y = Karyawan.A, group=1,
                colour = ""Karyawan A""),
            colour = ""gray"",
            size = 1) +
  geom_line(aes(y = Karyawan.B, group=1),
            colour = ""gray"",
            size = 1.25) +
  geom_line(aes(y = Karyawan.C, group=1),
            colour = ""gray"",
            size = 0.75) +
  geom_line(aes(y = Karyawan.D, group=1),
            colour = ""gray"",
            size = 1.5) +
  geom_line(aes(y = Karyawan.E, group=1),
            colour = ""darkblue"",
            size = 2) + 
  ylim(10, 40) +
  # Produktivitas tertinggi
  annotate(""segment"", x=8.5, xend=9, y=38, yend=max(tabel$Karyawan.E),
           colour=""darkblue"", size=0.5) + 
  annotate(""text"", x=7.5, 38, size=3, hjust=0, colour=""darkblue"",
           label=paste(""Produktivitas\ntertinggi\n"", 
                       toString(max(tabel$Karyawan.E)))) + 
  # Karyawan A
  annotate(""segment"", x=12, xend=12.15, colour=""grey"", size=0.5, 
           y=tabel$Karyawan.A[12], yend=tabel$Karyawan.A[12]-1.5) + 
  annotate(""text"", x=12.2, y=tabel$Karyawan.A[12]-1,
           hjust=0, colour=""grey"", label=""Karyawan A"") +
  annotate(""text"", x=12.2, y=tabel$Karyawan.A[12]-2, 
           hjust=0, colour=""grey"", size=3,
           label=paste(""avg:"", toString(mean(tabel$Karyawan.A)))) +
  # Karyawan B
  annotate(""segment"", x=12, xend=12.15, colour=""grey"", size=0.5, 
           y=tabel$Karyawan.B[12], yend=tabel$Karyawan.B[12]+1.5) + 
  annotate(""text"", x=12.2, y=tabel$Karyawan.B[12]+2,
           hjust=0, colour=""grey"", label=""Karyawan B"") +
  annotate(""text"", x=12.2, y=tabel$Karyawan.B[12]+1, 
           hjust=0, colour=""grey"", size=3,
           label=paste(""avg:"", toString(mean(tabel$Karyawan.B)))) +
  # Karyawan C
  annotate(""segment"", x=12, xend=12.15, colour=""grey"", size=0.5,
           y=tabel$Karyawan.C[12], yend=tabel$Karyawan.C[12]+1.5) + 
  annotate(""text"", x=12.2, y=tabel$Karyawan.C[12]+2,
           hjust=0, colour=""grey"", label=""Karyawan C"") +
  annotate(""text"", x=12.2, y=tabel$Karyawan.C[12]+1, 
           hjust=0, colour=""grey"", size=3,
           label=paste(""avg:"", toString(mean(tabel$Karyawan.C)))) +
  # Karyawan D
  annotate(""segment"", x=12, xend=12.15, colour=""grey"", size=0.5,
           y=tabel$Karyawan.D[12], yend=tabel$Karyawan.D[12]-1.5) + 
  annotate(""text"", x=12.2, y=tabel$Karyawan.D[12]-1,
           hjust=0, colour=""grey"", label=""Karyawan D"") +
  annotate(""text"", x=12.2, y=tabel$Karyawan.D[12]-2, 
           hjust=0, colour=""grey"", size=3,
           label=paste(""avg:"", toString(mean(tabel$Karyawan.D)))) +
  # Karyawan E
  annotate(""segment"", x=12, xend=12.15, colour=""darkblue"", size=0.5,
           y=tabel$Karyawan.E[12], yend=tabel$Karyawan.E[12]+0.5) + 
  annotate(""text"", x=12.2, y=tabel$Karyawan.E[12]+1,
           hjust=0, colour=""darkblue"", label=""Karyawan E"") +
  annotate(""text"", x=12.2, y=tabel$Karyawan.E[12], 
           hjust=0, colour=""darkblue"", size=3,
           label=paste(""avg:"", toString(mean(tabel$Karyawan.E)))) +
  labs(x = """", y = ""Jumlah produk (ribuan)\n"",
       title = ""Best Employee 2019"",
       subtitle = ""Lima karyawan dengan produktivitas tertinggi"") +
  theme(axis.text = element_text(size = 10),
        axis.ticks.x = element_blank(),
        plot.title = element_text(hjust = 0, size = 18, face=""bold""),
        panel.background = element_rect(fill = ""white""))

options(repr.plt.width = 10, repr.plt.height = 1)
plt",2332,2,8828
Gunakan format nama_variable[nomor_index].,15,1,7794
"<p>Kombinasikan fungsi <strong>inspect</strong>, <strong>subset</strong>, operator <strong>%in%</strong>, operator | dan &amp; terhadap variable <strong>mba</strong>. Penambahan inspect mengacu kepada contoh pada Lesson.</p>",146,1,8873
"Lihat gambar dan instruksi perintah pada Lesson, hint cukup jelas :)",986,1,8919
"Fungsi ROUND berguna untuk membulatkan bilangan dengan n digit dibelakang koma, untuk n = 0, 1, .... Untuk n = 0 maka hasil pembulatan  berupa bilangan bulat.
Pembulatan berlaku jika digit sebelum pembulatan >=5 maka dibulatkan ke arah kanan garis bilangan, Contoh: ROUND(0.62, 0) = 1 --> perhatikan digit pertama setelah tanda titik; ROUND(0.17, 1) = 0.2 --> perhatikan digit ke dua setelah tanda titik.
Jika digit sebelum pembulatan < 5 maka dibulatkan ke arah kiri garis bilangan.",1609,1,8957
Perhatikan code dengan seksama,1715,1,4996
"1. xintercept = 100
2. trans = ""log10""",2365,1,5853
Ikuti syntax yang ada di penjelasan. Baca lebih teliti lagi bagian penjelasan.,2543,1,7390
"",2301,1,5546
"",2302,1,5547
"",2303,1,5548
"Pastikan penggunaan fungsi ROUND pada kolom bertipe numerik float (nama_kolom), untuk sejumlah digit yang akan digunakan setelah pembulatan (n). Jika nama kolom bersangkutan diganti gunakanlah alias.
SELECT ROUND(nama_kolom, n) AS round_n_kolom FROM tabel;",1609,2,8958
pergunakan operator $ untuk mengekstrak elemen,2263,1,5343
"Syntax : fviz_pca_var(chocolates_pca, repel = TRUE)",2543,2,7391
Pastikan kamu telah mengkustomisasi grafik sesuai dengan grafik yang telah diperlihatkan.,1508,2,6428
Pastikan menggunakan fungsi print ( ) untuk menampilkan hasil pada code editor. ,2709,1,7860
Pastikan kamu sudah mengimport library pada live code editor sesuai dengan urutan pada soal.,1408,1,6265
"Perhatikan penggunaan alias saat mengimport library, seperti:
perintah import nama_library atau import nama_library as alias",1408,2,6266
"Mengisikan bagian coding yang kosong sesuai dengan angka permintaan pada soal.  

print (raw_data[:10])
print (raw_data[3:5])
print (raw_data.loc[[1,3,10]])
print (raw_data[['Jenis Kelamin', 'Pendapatan']][1:10])
print (raw_data[['Harga', 'Tingkat Kepuasan']].loc[[1,10,15]])",2709,2,7861
"Untuk membuat multi-bar chart pastikan kamu harus mengelompokkan dataset_dki_q4 lebih dari 1 kolom, di kasus ini digunakan kolom 'city' dan 'order_month'. Kemudian, lakukan agregasi , unstacking dan plot-lah. Jangan lupa untuk memasukkan keyword argument yang seharusnya.",1493,1,6655
"Kode lengkap untuk membuat multi bar-chart ini diberikan oleh

import matplotlib.pyplot as plt
dataset_dki_q4.groupby(['city','order_month'])['gmv'].sum().unstack().plot(kind='bar')
plt.title('GMV Per City, Breakdown by Month\nDKI Jakarta in Q4 2019',loc='center',pad=30, fontsize=15, color='blue')
plt.xlabel('Province', fontsize = 12)
plt.ylabel('Total Amount (in Billions)',fontsize = 12)
plt.legend(bbox_to_anchor=(1, 1), shadow=True, title='Month')
plt.ylim(ymin=0)
labels, locations = plt.yticks()
plt.yticks(labels, (labels/1000000000).astype(int))
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()",1493,2,6656
geom_col(position='position_dodge'),2843,2,8382
"Untuk tugas praktek, cara yang sama dengan perhitungan quantile statistics untuk kolom quantity juga dapat dilakukan untuk kolom item_price.",1523,2,7525
"Pastikan bahwa kamu telah
* mengimport pyplot library matplotlib sebagai aliasnya
* menerapkan method boxplot pada dataframe untuk membuat visualisasi dengan boxplot
* menampilkan grafik boxplot",2602,1,7542
"Kode lengkap:

import matplotlib.pyplot as plt

#Mengetahui kolom yang memiliki outliers!
uncleaned_raw.boxplot()
plt.show()",2602,2,7543
"* Pastikan bahwa dalam melakukan merge df2 adalah left dataframe dan df1 merupakan right dataframe.
* Pastikan kembali bahwa keempat proses merge yang diminta secara berurutan yaitu left, right, inner dan outer. ",2210,1,5257
"Untuk melakukan merge kamu dapat menggunakan pd.merge(left=___, right=___, how=___, left_on=___, right_on=___).",2210,2,5258
.groupby('Ticket')['Ticket'].transform('count'),1716,1,4997
plt.show(),1716,2,4998
Akses status_code dari obyek resp dengan menggunakan $,2260,1,5478
"<p>Kombinasikan fungsi <strong>inspect</strong>, <strong>subset</strong>, operator <strong>%ain%</strong> terhadap variable <strong>mba</strong>. Penambahan inspect mengacu kepada contoh pada Lesson.</p>",147,1,8874
Gunakan library httr ,2256,1,8955
Simpan hasil fungsi yang Anda buat ke dalam obyek bernama resp,2256,2,8956
Pastikan penulisan set argument untuk mode menulis (write) telah dituliskan dengan benar.,1383,1,8959
Pastikan penulisan atau pemanggilan file bertipe txt sudah benar beserta tanda baca,1383,2,8960
Jangan kamu lupakan bahwa kamu perlu mengimport library numpy dan pandas sebagai alias masing-masingnya. ,2155,2,4735
Gunakan geom_point() untuk membuat scatterplot.,2846,1,8383
"Untuk membuat stacked bar chart pastikan kamu harus mengelompokkan dataset_dki_q4 lebih dari 1 kolom, di kasus ini digunakan kolom 'city' dan 'order_month'. Kemudian, lakukan agregasi, pengurutan, unstacking dan plot-lah. Jangan lupa untuk memasukkan keyword argument yang seharusnya, yaitu minimal dua buah keyword argument.",1494,1,6657
"Kode lengkap untuk membuat stacked bar chart tersebut adalah

import matplotlib.pyplot as plt
dataset_dki_q4.groupby(['order_month','city'])['gmv'].sum().sort_values(ascending=False).unstack().plot(kind='bar', stacked=True)
plt.title('GMV Per Month, Breakdown by City\nDKI Jakarta in Q4 2019',loc='center',pad=30, fontsize=15, color='blue')
plt.xlabel('Order Month', fontsize = 12)
plt.ylabel('Total Amount (in Billions)',fontsize = 12)
plt.legend(bbox_to_anchor=(1, 1), shadow=True, ncol=1,title='City')
plt.ylim(ymin=0)
labels, locations = plt.yticks()
plt.yticks(labels, (labels/1000000000).astype(int))
plt.xticks(rotation=0)
plt.tight_layout()
plt.show()",1494,2,6658
"Lengkapi bagian yang kosong di live code editor, seperti pada soal. ",2651,1,7767
"Gunakan x_train & y_train untuk mentrain model, kemudian simpan sebagai log_model. ",2175,1,5202
"#Train the model
log_model = LogisticRegression().fit(___, ___)
print(___, log_model)",2175,2,5203
Pastikan kamu telah menerapkan method applymap dengan menggunakan anonymous function dan function dengan def untuk persamaan kuadrat yang diminta.,2146,1,4744
Jangan lupa untuk menggunakan random seed generator 1234 dan kemudian mencetak setiap langkah dari perubahan dataframe seperti yang telah diinstruksikan.,2146,2,4745
"Pastikan kamu
* telah mengimport pandas terlebih dahulu sebagai aliasnya
* telah membuat list yang berisi nilai integer dari 1 s/d 6 dan kemudian mencetaknya ke console",1683,1,4746
"Pastikan untuk membuat data frame bahwa kamu telah membuat list of list yang masing-masing list  terdalam berisi 3 elemen, sementara list terluar berisi 4 buah list terdalam. Selanjutnya, cetaklah ke console.",1683,2,4747
"Pastikan bahwa dalam menuliskan kode di code editor kamu telah
* mengimport library plotting matplotlib.pyplot sebagai aliasnya
* konversi dataframe ke array dengan method .values pada variabel independent X
* memisahkan kedua feature/kolom pada X menjadi masing-masing vektor xs dan ys untuk scatter plot, 
* plot berdasarkan argument dan keyword argument sesuai dengan instruksi yang diberikan
* mengambil centroid dari cluster_model dengan menggunakan attribute cluster_centers_
* plotlah menggunakan scatter plot posisi dari centroid sebagai pusat cluster sesuai dengan instruksi dan elemen-elemen grafik yang berhasil diplotkan.",1591,1,6870
"1. read_tsv
2. nrow()
3. ncol()",2349,1,8831
Kamu dapat menggunakan geom_col(),2838,1,8360
Untuk menampilkan data selalu ingat gunakan fungsi print ( ),2689,1,7864
"Kode lengkapnya adalah

#import library
import matplotlib.pyplot as plt

#convert dataframe to array
X = X.values
#Separate X to xs and ys --> use for chart axis
xs = X[:,0]
ys = X[:,1]
# Make a scatter plot of xs and ys, using labels to define the colors
plt.scatter(xs,ys,c=labels, alpha=0.5)

# Assign the cluster centers: centroids
centroids = cluster_model.cluster_centers_
# Assign the columns of centroids: centroids_x, centroids_y
centroids_x = centroids[:,0]
centroids_y = centroids[:,1]
# Make a scatter plot of centroids_x and centroids_y
plt.scatter(centroids_x,centroids_y,marker='D', s=50)
plt.title('K Means Clustering', fontsize = 20)
plt.xlabel('Annual Income')
plt.ylabel('Spending Score')
plt.show()",1591,2,6871
gunakan paket readr,2349,2,8832
Ketik sesuai dengan contoh pada soal.,148,1,8875
"Gunakan c(""ICT"", ""Ilmu Komunikasi"", ""Seni dan Desain"") sebagai kondisi filter",991,1,8922
"Pastikan bahwa kamu telah
* megimport library yang diperlukan yaitu KMeans dari sklearn.cluster, dan plotting dengan  matplotlib.pyplot sebagai aliasnya
* menginisialisasi variabel inersia sebagai list kosong: []
* melakukan looping indeks k dari 1 s/d 10 untuk digunakan masing-masingnya sebagai jumlah cluster untuk KMeans sebagaimana instruksi 3, 4, 5, dan 6
* memplotkan inertianya dengan plot dan elemen-elemen grafik seperti grafik yang diperlihatkan.",1593,1,6872
"split(', ', expand=True)[1]",1717,1,4999
"split('.', expand=True)[0]",1717,2,5000
"Untuk membuat variabel baru data_per_customer pastikan kamu menggunakan variabel dataset_dki_q4, mengelompokkan dataset_dki_q4 berdasarkan 'customer_id', membuat agregasi kolom 'order_id';  'quantity'; dan 'gmv' sesuai dengan yang dicontohkan. Jangan lupa mengganti nama kolom 'order_id' dengan 'orders' dan mencetak data_per_customer  berdasarkan customer yang memiliki banyak orderan.",1496,1,6659
"Di sini kita menggunakan chaining untuk menghasilkan data_per_customer, yaitu

data_per_customer = (dataset_dki_q4.groupby('customer_id')
                                   .agg({'order_id':'nunique', 
                                         'quantity': 'sum', 
                                         'gmv':'sum'})
                                   .reset_index()
                                   .rename(columns={'order_id':'orders'}))",1496,2,6660
"Pastikan bahwa kamu telah menuliskan kode untuk anotasi teks yang menyatakan penambahan gmv yang signifikant di posisi (x, y) = (0.45,0.72). Serta, kamu harus juga memastikan keyword transform dengan benar diisi.",1470,1,6309
"Pastikan bahwa kamu telah:
(*)  mengubah tipe data di kolom customer_id, quantity, item_price yang semula string menjadi int64 melalui penggunaan method apply
(*)  mentransformasi kolom product_value menjadi product_id sesuai dengan instruksi berdasarkan fungsi yang didefinisikan melalui penggunaan method apply
(*)  mentransformasi kolom order_date menjadi bertipe data datetime64 format YYYY-mm-dd melalui penggunaan to_datetime dan method apply
(*)  menghandle missingvalue dengan method fillna
(*)  menggabungkan kolom city dan province menjadi sebuah kolom city/province
(*)  menset index yang baru sesuai dengan urutan kolom yang diberikan
(*)  membuat kolom baru yang merupakan hasil perkalian antara kolom quantity dan kolom item_price
(*)  menslice dataset akhir untuk bulan Januari 2019 saja",2156,1,9005
"Kode lengkap untuk penempatan anotasi text ini adalah

plt.text(0.45,0.72, 'The GMV increased significantly on October 2019', transform=fig.transFigure, color='red')",1470,2,6310
"Kode lengkap:

#import library
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt

#Elbow Method - Inertia plot
inertia = []
#looping the inertia calculation for each k
for k in range(1, 10):
    #Assign KMeans as cluster_model
    cluster_model = KMeans(n_clusters = k, random_state = 24)
    #Fit cluster_model to X
    cluster_model.fit(X)
    #Get the inertia value
    inertia_value = cluster_model.inertia_
    #Append the inertia_value to inertia list
    inertia.append(inertia_value)

##Inertia plot
plt.plot(range(1, 10), inertia)
plt.title('The Elbow Method - Inertia plot', fontsize = 20)
plt.xlabel('No. of Clusters')
plt.ylabel('inertia')
plt.show()",1593,2,6873
Nama-nama field yang dimasukkan dimasukkan ke dalam index pada variable penduduk.dki sebagai item-item vector.,173,1,8876
Pastikan kamu sudah mengimport library pandas sebagai aliasnya dan kemudian membaca file tsv yang telah diintruksikan.,2134,1,8963
Pastikan kamu dengan benar menuliskan urutan dari kolom-kolom yang menjadi index baru dataframe dan kemudian menempatkannya ke dalam looping untuk diinspeksi kembali nama dan level multi index yang telah diset.,2134,2,8964
"Jangan lupa bahwa 
(*)  method apply memiliki argumen berupa suatu fungsi baik didiefinisikan dengan def atau anonymous function via lambda
(*)  untuk mengubah menjadi datetime64 kamu bisa menggunakan pd.to_datetime
(*)  untuk mengisi missing value dengan method fillna dapat diisikan argumennya nilai missing yang akan diganti
(*)  untuk menggabungkan kolom bertipe object/string/text dapat dilakukan seperti menggabungkan string
(*)  untuk melakukan kalkulasi matematis antar kolom dapat dilakukan operasi matematis antar kolom 
(*)  untuk membuat multi index dapat dientrikan argumen pada method set_index yaitu kolom-kolom mana saja yang akan dijadikan index
(*)  untuk menslice multi index perhatikan urutan/hirarki indexnya terlebih dahulu",2156,2,9006
"",2344,1,5755
Lengkapi code sesuai dengan contoh pada soal. ,2689,2,7865
"target (y) adalah kolom `churn`, sedangkan predictor (X) adalah semua kolom selain `churn` dalam data `cleaned_df`. Setelah data dipisah berdasarkan kolom, lakukan spliting dengan menggunakan `train_test_split()` dan simpan menjadi x_train, y_train, x_test, y_test.",2173,1,5194
"X = ___.drop(___, axis = 1) 
y = ___[___]

#Split the data into 70% training and 30% testing
x_train, x_test, y_train, y_test = train_test_split(___, ___, test_size=___, random_state=42)

print('Jumlah baris dan kolom dari x_train adalah:', ___.shape,', sedangkan Jumlah baris dan kolom dari y_train adalah:', ___.shape)
print('Prosentase Churn di data Training adalah:')
print(___.value_counts(normalize=True))
print('Jumlah baris dan kolom dari x_test adalah:', ___.shape,', sedangkan Jumlah baris dan kolom dari y_test adalah:', ___.shape)
print('Prosentase Churn di data Testing adalah:')
print(___.value_counts(normalize=True))",2173,2,5195
"x = carat
y = price
colour = clarity",2338,1,5814
Gunakan fungsi headers() untuk mengetahui metadata yang tersimpan pada obyek resp,2261,1,5481
"1. library(waffle)
2. fill = faskes
3. values = jumlah",2368,1,5856
"import matplotlib.pyplot as plt
from plotnine import *

df_penduduk_luas_jumlah = df_penduduk.groupby(['NAMA KELURAHAN', 'LUAS WILAYAH (KM2)'])[['JUMLAH']].agg('sum').reset_index()

(ggplot(data=df_penduduk_luas_jumlah)
+ aes(y='LUAS WILAYAH (KM2)', x='JUMLAH')
+ geom_point()
).draw()
plt.show()",2846,2,8384
" Argumen color adalah argumen yang akan memisahkan data berdasarkan warna.
color='Negara'",2852,1,8397
"Coba amati lagi bagian awal dan bagian akhir output dari syntax yang dijalankan pada penjelasan.

## # A sensory table: <348 x 18>
## # Sensory method:  Quantitative Descriptive Analysis
## # Panelist:        panelist <29 subjects>
## # Product:         product <6 items>
## # Attribute:       cocoa_a, milk_a, cocoa_f, milk_f...<14 lexicons>
## # Hedonic:         None
....
....
## # … with 338 more rows, and 8 more variables: sweetness , acidity ,
## #   bitterness , astringency , crunchy , melting ,
## #   sticky , granular ",2548,1,7396
ekstrak data dari cov_jabar_raw dan simpanlah hasilnya sebagai obyek bernama cov_jabar!,2267,1,5348
Amati struktur cov_jabar menggunakan fungsi str() dan head().,2267,2,5349
Ketiklah bagian perintah,1718,1,5001
Gunakan fungsi status_code untuk mengecek status code dari permintaan Anda melalui API,2259,1,5395
Jangan lupakan fungsi print ( ) untuk menampilkan data yang diinginkan. ,2712,1,7866
Ketikkan coding seperti pada hasil di soal. ,2712,2,7867
"Perhatikan tanda baca. Karena diawali dengan fungsi print ( ), pastikan penulisan median() sudah tepat. ",2688,1,7911
"Pastikan kamu dengan benar telah menuliskan keyword argument pada plt.grid sesuai dengan yang dicontohkan, yaitu warna, style garis, dan tebal garis.",2396,1,6311
"Statement lengkap untuk mengkustomisasi grid yaitu:

plt.grid(color='darkgray', linestyle=':', linewidth=0.5)",2396,2,6312
help(subset),2345,1,5757
"load scales
gunakan df_loan_mei yang sudah dibuat sebelumnya
urutkan total_amount dengan fungsi arrange yang menggunakan desc 
kemudian ubah total_amount menggunakan comma dan tampilkan 5 data teratas",1995,1,4796
"library(dplyr)
library(scales)
data %>% 
   arrange(desc(...)) %>% 
   mutate(total_amount = comma(total_amount)) %>%
   head(...)",1995,2,4797
"Pastikan sudah dengan benar import matplotlib.pyplot.
",2750,1,8119
"TRUE
TRUE
TRUE
TRUE
FALSE
TRUE
TRUE
TRUE
TRUE
FALSE

",2548,2,7397
"Pastikan kembali bahwa untuk membuat histogram pertama tidak memerlukan keyword argument, sedangkan untuk histogram kedua diperlukan keywor argument. ",1497,1,6661
"Kode lengkap untuk kedua jenis histogram ini adalah

import matplotlib.pyplot as plt
plt.clf()
# Histogram pertama
plt.figure()
plt.hist(data_per_customer['orders'])
plt.show()
# Histogram kedua
plt.figure()
plt.hist(data_per_customer['orders'], range=(1,5))
plt.title('Distribution of Number of Orders per Customer\nDKI Jakarta in Q4 2019',fontsize=15, color='blue')
plt.xlabel('Number of Orders', fontsize = 12)
plt.ylabel('Number of Customers', fontsize = 12)
plt.show()",1497,2,6662
"Untuk membuat variabel baru top_provinces pastikan kamu menggunakan variabel dataset_dki_q4, mengelompokkan dataset_dki_q4 berdasarkan 'province' kemudian pilih kolom 'gmv', terapkan agregasi yang sesuai dengan yang dicontohkan. Urutkan berdasarkan gmv dari yang terbesar ke yang terkecil.

Variabel top province dijadikan sebagai variabel untuk memberuk kolom baru dataset, yaitu kolom 'province_top'.

Plotlah grafik berdasarkan kolom 'order_month' dan 'gmv' untuk setiap 'province_top'.",1487,1,6686
"Seperti yang dijelaskan dalam paragraf pertama, tertera nama file atau variabel. 
Paragraf kedua tertera nama package.",2520,1,7347
"package : skimr
nama variabel : chocolates",2520,2,7348
Lengkapi bagian yang kosong sesuai dengan permintaan soal dan fungsi median yang digunakan. ,2688,2,7912
"+ aes(x='Bulan', y='Inflasi', color='Negara')",2852,2,8398
"Gunakan attribute .dtypes pada varibel dataframe retail_raw, dan kemudian tampilkan outputnya di console.",1514,1,7512
"Kode lengkapnya:

print(retail_raw.dtypes)",1514,2,7513
Pastikan kamu telah menggunakan fungsi .corr() pada kolom quantity dan item_price di dataset retail_raw.,1526,1,7526
"Kode untuk perhitungan korelasi quantity dan item_price:

retail_raw[['quantity', 'item_price']].corr()",1526,2,7527
"Pastikan kamu telah
* menghitung quartile pertama (Q1) dan ketiga (Q3) untuk dataframe kolom UnitPrice
* menghitung inter quartile range-nya 
* membuang data pada kolom UnitPrice yang outliers
* mengecek duplikasi pada dataframe, jika ada maka data yang duplikat dibuang",2603,1,7544
Gunakan fungsi print ( ) dan numpy as np untuk menyelesaikan soal ini. ,2713,1,7868
Gunakan fungsi .hist untuk membuat histogram.,2750,2,8120
"Pilih variable predictor ('tenure', 'MonthlyCharges', 'TotalCharges'), lalu bikin bin dengan 20 bin, kemudian visualisasikan berdasarkan target `Churn` berdasarkan nilai `Yes` atau `No` nya.",2168,1,5156
"numerical_features = [___]
fig, ax = plt.subplots(1, 3, figsize=(15,6))
df_load[df_load.___ == 'No'][___].hist(bins=20, color=___, alpha=0.5, ax=ax)
df_load[df_load.___ == 'Yes'][___].hist(bins=20, color=___, alpha=0.5, ax=ax)
plt.show()",2168,2,5157
Submit Jawaban ini saja,1720,1,5002
"Untuk task pertama, gunakan konstruksi plot.jakarta <- ggplot(…) dimana input parameter data ggplot diisi dengan variable penduduk.dki. Dan untuk task kedua gunakan function summary dengan input plot.jakarta.",174,1,8877
Ketik sesuai petunjuk pada Lesson,981,1,8924
Ketik variable transaksi diikuti dengan @ dan komponen data pada baris kosong di code editor.,119,1,8965
"Pastikan kamu
* menentukan terlebih dahulu label dan posisi tickmarksnya
* gunakan plt.yticks dengan argument berupa labels dan label terbarunya yang tentunya sudah dibagi dengan 1 milyar.
",1467,1,6313
"Statement lengkap untuk kedua langkah ini adalah

labels, locations = plt.yticks()
plt.yticks(labels, (labels/1000000000).astype(int))",1467,2,6314
"Pastikan histogram yang dibuat memiliki keyword argument berupa jumlah bins sebesar 100, jangkauan 1 s/d 20, dan batangnya bewarna coklat.",1498,1,6663
"load dplyr
gunakan df_loan
filter dengan tanggal_cair '2020-05-01' sampai dengan '2020-05-31'
lalu group_by cabang kemudian hitung total_amount
simpan sebagai df_loan_mei
lalu jalankan df_loan_mei",1994,1,4822
"library(dplyr)
df_loan_mei <- df_loan %>% 
     filter(tanggal_cair >= ..., tanggal_cair <= ...) %>% 
     group_by(...) %>% 
     summarise(total_amount = ...)
df_loan_mei",1994,2,4823
"Kode lengkap untuk membuat histogram ini adalah

import matplotlib.pyplot as plt
plt.figure(figsize=(10,5))
plt.hist(data_per_customer['quantity'], bins=100, range=(1,200), color='brown')
plt.title('Distribution of Total Quantity per Customer\nDKI Jakarta in Q4 2019',fontsize=15, color='blue')
plt.xlabel('Quantity', fontsize = 12)
plt.ylabel('Number of Customers',fontsize = 12)
plt.xlim(xmin=0,xmax=200)
plt.show()",1498,2,6664
"Ikuti contoh pada soal untuk mendapatkan hasil yang benar. Perhatikan setiap tanda baca yang dipergunakan. 

print (raw_data[['Pendapatan', 'Harga']].agg([np.mean, np.median]))
print (raw_data[['Pendapatan', 'Harga', 'Produk']].groupby('Produk').agg([np.mean, np.median]))",2713,2,7869
"gunakan df_loan_mei yang sudah dibuat sebelumnya
urutkan total_amount dengan fungsi arrange 
kemudian ubah total_amount menggunakan comma dan tampilkan 5 data teratas",1996,1,4828
"library(dplyr)
data %>% 
   arrange(...) %>% 
   mutate(total_amount = comma(total_amount)) %>%
   head(...)",1996,2,4829
"",2727,1,7913
"Pastikan kamu telah 
* menuliskan tiga baris kode seperti yang dicontohkan, dan
* menuliskan kode sesuai dengan ouput yang diberikan di console untuk tugas praktek",1555,1,6928
"Gunakan df_loan, 
group by cabang lalu cari tanggal cair pertama, 
selanjutnya hitung umur.
simpan sebagai df_cabang_umur
tampilkan df_cabang_umur",1998,1,4832
"library(dplyr)
df_cabang_umur <- df_loan %>%
  group_by(...) %>% 
  summarise(pertama_cair = ...) %>% 
  mutate(umur = ...)
df_cabang_umur",1998,2,4833
"Gunakan df_loan_mei dan df_cabang_umur, inner join dengan variabel join cabang",1999,1,4834
"library(dplyr)
df_loan_mei_umur <- df_loan_mei %>%
     inner_join(df_cabang_umur, by = ...)
df_loan_mei_umur",1999,2,4835
"Untuk tugas praktek ini kamu dapat menggunakan method .loc[..., ...] pada dataset_corr dengan ..., dan ... adalah kolom-kolom yang akan dicetak nilai korelasinya.",1555,2,6929
Pastikan bahwa kamu telah menuliskan ulang kode berdasarkan syntax yang telah dicontohkan.,1558,1,6930
sns.countplot() digunakan untuk memvisualisasikan seberapa banyak kategori pada suatu fitur dataset.,1558,2,6931
"Untuk task pertama, gunakan konstruksi plot.jakarta <- ggplot(…) dengan input pertama adalah parameter data dan input kedua adalah parameter aes.",175,1,8878
Gunakan konstruksi layer yang terdapat pada soal untuk mengisi bagian […].,184,1,8881
"Pastikan kamu telah 
* mengimport matplotlib.pyplot dan seaborn sebagai aliasnya masing-masing.
* menggunakan kolom Region dari dataset, serta membubuhkan label dan title sesuai dengan yang diinstruksikan.",1559,1,6934
gunakan data df_loan_mei_umur dengan x-nya umur dan y-nya total_amount,2000,1,4846
"plt.hist(..., color = ...) digunakan untuk membuat histogram dari dataframe/series dan untuk keyword argument color berisi nama color berdasarkan daftar warna pada matplotlib.pyplot.",1559,2,6935
"1. coord_equal()
2. theme()
3. family = ""Arial Narrow""",2370,1,5858
"- Coba amati lagi bagian awal output dari syntax yang dijalankan pada penjelasan.

## # Local analysis:   
## # Sensory method:    Quantitative Descriptive Analysis
## # Analytical method: Analysis of variance
## # Model:             Attribute ~ Product + Panelist + Session +
## #   PanelistXProduct + PanelistXSession + ProductXSession + Presentation Order

- jawaban memiliki nilai boolean (TRUE or FALSE)",2549,1,7400
"FALSE
TRUE
FALSE",2549,2,7401
"Pastikan histogram yang dibuat memiliki keyword argument berupa jumlah bins sebesar 100, jangkauan 1 s/d 200000000, dan batangnya bewarna hijau. Dengan demikian batasan maksimum sumbu x juga sesuai dengan keyword argument jangkauan. Jangan lupa untuk mengubah label di xticks.",1499,1,6665
Apakah Anda sudah benar memasukkan rentang waktunya?,1303,1,5524
Masukan perintah sesuai soal,1721,1,5003
"Gunakan df_loan_mei_umur,
buat kelompok umur, 
lalu buat Q1, Q3  (fungsi quantile) dan IQR dengan group by dan mutate
terakhir buat flag rendah baik
tampilkan hanya yang flag rendah",2002,1,4855
"library(dplyr)
library(scales)
df_loan_mei_flag <- ... %>% 
    group_by(...) %>% 
    mutate(Q1 = quantile(..., 0.25),
	   Q3 = quantile(..., 0.75),
	  IQR = (... - ...)) %>%
    mutate(flag = ifelse(.. < (... - ...), '...', '...')) 

df_loan_mei_flag %>% 
    filter(... == '...') %>% 
    mutate_if(is.numeric, funs(comma))",2002,2,4856
"Kode lengkap untuk kustomisasi akhir histogram ini adalah

import matplotlib.pyplot as plt
plt.figure(figsize=(10,5))
plt.hist(data_per_customer['gmv'], bins=100, range=(1,200000000), color='green')
plt.title('Distribution of Total GMV per Customer\nDKI Jakarta in Q4 2019',fontsize=15, color='blue')
plt.xlabel('GMV (in Millions)', fontsize = 12)
plt.ylabel('Number of Customers',fontsize = 12)
plt.xlim(xmin=0,xmax=200000000)
labels, locations = plt.xticks()
plt.xticks(labels, (labels/1000000).astype(int))
plt.show()",1499,2,6666
"gunakan data df_loan_mei_umur dengan x umur dan y total_amount
breaks baik dan rendah
value blue dan red",2003,1,4858
"Kode lengkap untuk persoalan ini diberikan sebagai berikut:

# Buat variabel untuk 5 propinsi dengan GMV tertinggi
top_provinces = (dataset.groupby('province')['gmv']
                        .sum()
                        .reset_index()
                        .sort_values(by='gmv',ascending=False)
                        .head(5))
print(top_provinces)

# Buat satu kolom lagi di dataset dengan nama province_top
dataset['province_top'] = dataset['province'].apply(lambda x: x if (x in top_provinces['province'].to_list()) else 'other')

# Plot multi-line chartnya
import matplotlib.pyplot as plt
dataset.groupby(['order_month','province_top'])['gmv'].sum().unstack().plot(marker='.', cmap='plasma')
plt.title('Monthly GMV Year 2019 - Breakdown by Province',loc='center',pad=30, fontsize=20, color='blue')
plt.xlabel('Order Month', fontsize = 15)
plt.ylabel('Total Amount (in Billions)',fontsize = 15)
plt.grid(color='darkgray', linestyle=':', linewidth=0.5)
plt.ylim(ymin=0)
labels, locations = plt.yticks()
plt.yticks(labels, (labels/1000000000).astype(int))
plt.legend(loc='upper center', bbox_to_anchor=(1.1, 1), shadow=True, ncol=1)
plt.gcf().set_size_inches(12, 5)
plt.tight_layout()
plt.show()",1487,2,6687
"Ingat bahwa
1 - 11 : pagi
12 - 16 : siang
17 - 18 : sore
19 - 24: malam",1303,2,5525
"filter umur 3 bulan
filter tanggal_cair di bulan mei",2004,1,4861
Ketik variable transaksi diikuti dengan @ dan komponen itemInfo pada baris kosong di code editor.,116,1,8966
"Pastikan kamu telah menggunakan method .ylim() dari plt, dengan menggunakan keyword argument ymin seperti yang ditujukkan dalam contoh.",1468,1,6315
"filter umur 3 bulan, flag rendah
filter tanggal_cair di bulan mei",2005,1,4864
"Statement lengkapnya untuk mengkustomisasi batas minimum sumbu y adalah:

plt.ylim(ymin=0)",1468,2,6316
Pastikan kamu telah menghitung rata - rata total belanja per kolom kode_pelanggan.,1654,1,7665
"filter hanya cabang AH
filter tanggal_cair di bulan mei",2007,1,4867
"",2367,1,5793
Ikuti seperti pada hasil yang dicontohkan pada soal. ,2691,2,7871
"1",2758,1,7948
"2",2758,2,7949
Apakah variabel potongan sudah dideklarasikan dengan nilai yang tepat? ,1251,1,7992
Pastikan kamu telah mengetikkan code yang dicontohkan untuk menentukan length kolom  'city'.,1515,1,7516
Dengan cara yang sama kamu dapat melakukannya untuk menentukan length kolom  'product_id'.,1515,2,7517
"Pastikan kamu menggunakan method isnull pada variabel dataset, kemudian melakukan chaining method sum untuk pengecekan disetiap feature dan chaining method sum sekali lagi untuk keseluruhan missing value.",1561,1,6938
"Kode lengkapnya adalah:

#checking missing value for each feature  
print('Checking missing value for each feature:')
print(dataset.isnull().sum())
#Counting total missing value
print('\nCounting total missing value:')
print(dataset.isnull().sum().sum())",1561,2,6939
Lengkapi bagian ___ pada konsol seperti pada soal. ,2692,1,7872
Urutannya diisi dengan nilai max dikurangi dengan nilai min. ,2692,2,7873
"figure_size adalah salah satu argumen yang dapat diberikan untuk theme() 
Lengkapi ukuran figure size seperti yang diminta soal (10,5)",2853,1,8399
"hasil, _ = stats.___(raw_data['Pendapatan']) --> bagian ini yang diisi hanya stats.boxcox. 
Bagian sebelumnya, bukan merupakan coding yang hilang. ",2751,1,8121
"Gunakan fungsi .hist() untuk menampilkan histogram. 
Dan ingat fungsi plt.tight_layout() serta plt.show() untuk menampilkan grafik. ",2751,2,8122
"Pada kasus nyata sehari-hari, bagaimana kita mendapatkan nilai dari harga_setelah_potongan?",1251,2,7993
Pastikan Anda telah mengikuti petunjuk yang diberikan.,1263,1,8022
"Nama library, fungsi, dan variabel terdapat di penjelasan. Coba baca lebih teliti lagi penjelasannya.",2539,1,7482
"Library : library(FactoMineR)
Variabel : chocolates_pca
Fungsi : PCA()
Ekstraksi : chocolates_pca$eig

",2539,2,7483
Gantilah _ _ _ dengan perintah/fungsi/method yang sesuai dengan tipe data tuple.,1263,2,8023
Gunakan fungsi .get_dummies() seperti yang dicontohkan pada soal. ,2752,1,8123
"1. Pastikan kamu telah menggunakan tanda baca (""..."") pada fungsi print 
2. Pastikan kamu memperhatikan penggunaan huruf besar/kecil
3. Pastikan kamu memperhatikan tanda tanda titik (.) pada text",1398,1,7647
"Pastikan kamu telah mengisi kalimat dalam print sama persis dengan contoh pada soal, termasuk penggunaan huruf besar/kecil dan penggunaan tanda titik pada text. ",1398,2,7648
Pastikan kamu telah menggunakan fungsi .fillna() dan kemudian .mean() pada kolom item_price dari dataset retail_raw.,1530,1,7530
"Kode lengkapnya adalah:

print(retail_raw['item_price'].fillna(retail_raw['item_price'].mean()))",1530,2,7531
Yang ingin ditampilkan adalah 'Produk'.,2752,2,8124
"Kode lengkap:

#Check IQR
Q1 = uncleaned_raw['UnitPrice'].quantile(0.25)
Q3 = uncleaned_raw['UnitPrice'].quantile(0.75)
IQR = Q3 - Q1

#removing outliers
uncleaned_raw = uncleaned_raw[~((uncleaned_raw[['UnitPrice']] < (Q1 - 1.5 * IQR)) | (uncleaned_raw[['UnitPrice']] > (Q3 + 1.5 * IQR)))]

#check for duplication
print(uncleaned_raw.duplicated(subset=None))

#remove duplication
uncleaned_raw = uncleaned_raw.drop_duplicates()",2603,2,7545
"-	Gunakan fungsi SUM() pada “SELECT” statement untuk menghitung total_penjualan.
-	Gunakan “UNION” untuk menggabungkan 2 atau lebih “Select” statement. 
-	Gunakan “GROUP BY” untuk mengelompokkan total_penjualan berdasarkan kolom “quarter”. 
-	SELECT orderNumber, status, quantity, “1” as quarter FROM orders_1  menambahkan kolom baru dengan value 1 pada tabel orders_1
-	SELECT orderNumber, status, quantity, “2” as quarter FROM orders_2  menambahkan kolom baru dengan value 1 pada tabel orders_2
-	Format syntax menggunakan subquery : 
SELECT *
FROM (subquery statement) AS name
",2104,1,8157
Pastikan kamu telah membuat pengkategorian sesuai dengan perintah yang diberikan.,1654,2,7666
" 
	SELECT	…, sum(…) AS …, sum(…* …) AS revenue
	FROM (SELECT …, …, …, …,‘1’ as quarter 
		FROM orders_1
		UNION 
		SELECT …, …, …, …,‘2’ as quarter
FROM orders_2) AS tabel_a
	WHERE … = …
	GROUP BY …
",2104,2,8158
Perhatikan tanda baca dan lengkapi dengan informasi yang ingin dilihat datanya. ,2782,2,8208
"Tidak ada yang perlu dirubah atau ditambahkan pada code editor, cukup jalankan dan kumpulan dengan cara submit ke dalam sistem.",176,1,8879
Gunakan konstruksi layer yang terdapat pada soal untuk mengisi bagian […].,183,1,8880
"Langkah pertama Gunakan fungsi `drop_duplicates()` untuk menghapus rows yang memiliki ID custimer dan nilai dari kolom lain ya sama persis. Kemudian sortir Id Customer berdasarkan pengambilan periodenya, jika ada Id customer yang masih duplikat, ambil periode paling terakhir (202006).",2119,1,9090
"# Drop Duplicate Rows\n
(....).drop_duplicates()\n
# Drop duplicate ID sorted by Periode\n
df_load = df_load.sort_values('....', ascending=....).drop_duplicates(.....)\n
print('Hasil jumlah ID Customer yang sudah dihilangkan duplikasinya adalah',df_load[....].count())",2119,2,9091
"Pastikan kamu telah
* mengimport library yang dibutuhkan (train_test_split)
* mensplit X dan y melalui fungsi train_test_split",2622,1,7687
"Kode lengkap:

from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0)",2622,2,7688
Pastikan kamu telah menghapus kolom 'no' dan 'Row_Num' dengan menggunakan keyword del.,2614,1,7737
"Kode lengkap:

# Hapus kolom-kolom yang tidak diperlukan
del df['no']
del df['Row_Num']

# Cetak lima data teratas
print(df.head())",2614,2,7738
Pemahaman terkait dictionary pada python (baik dictionary tunggal atau dict of dict) sangat membantu untuk mengetahui nama-nama elemen di variabel cov_id_update.,2660,1,7750
"Karena cov_id_raw bersifat data dict, maka penulisan code selanjutnya tanpa tambahan tanda baca lain. ",2658,1,7772
Lengkapi bagian live code yang kosong seperti yang dicontohkan dan pastikan semua tanda baca sudah benar. ,2662,1,7775
Ikuti semua code yang ada pada gambar dan perhatikan semua tanda baca sudah benar.,2673,1,7784
"Kode lengkapnya adalah

from sklearn.metrics import confusion_matrix, classification_report

# evaluating the model
print(""Training Accuracy :"", model.score(X_train, y_train))
print(""Testing Accuracy :"", model.score(X_test, y_test))

# confusion matrix
cm = confusion_matrix(y_test, y_pred)
print(cm)

# classification report
cr = classification_report(y_test, y_pred)
print(cr)",1575,2,6949
Ingat fungsi numpy disingkat np. var() . ,2693,1,7874
"Perhatikan penulisan bagian kode yang kosong. Jangan sampai tanda baca terlewatkan. 

print (raw_data['Pendapatan'].var())
print (np.var(raw_data['Pendapatan']))
print (raw_data['Pendapatan'].var(ddof = 0))",2693,2,7875
"- Coba cari tahu jenis grafik yang ditampilkan pada fungsi visualise().
- Jawaban memiliki nilai boolean (TRUE or FALSE)
",2550,1,7447
"FALSE
TRUE
FALSE
TRUE",2550,2,7448
"Karena kita ingin agar warna yang diberikan merepresentasikan besarnya jumlah penduduk tersebut, maka kita
mengisi color dengan nama kolom yang merujuk ke jumlah penduduk, yaitu JUMLAH .",2847,1,8385
"1",2759,1,7954
"2",2759,2,7955
"Pastikan kamu telah 
* mengecek kapan transaksi terakhir dari dataset
* menggunakan kondisi yang dinyatakan untuk menentukan customer mana yang berstatus churn atau tidak.",2612,1,7603
"Kode lengkap:

# Pengecekan transaksaksi terakhir dalam dataset
print(max(df['Last_Transaction']))

# Klasifikasikan customer yang berstatus churn atau tidak
df.loc[df['Last_Transaction'] <= '2018-08-01', 'is_churn'] = True 
df.loc[df['Last_Transaction'] > '2018-08-01', 'is_churn'] = False

print('Lima data teratas:')
print(df.head())

print('\nInfo dataset:')
print(df.info())",2612,2,7604
Ikuti petunjuk berupa gambar yang ada pada penjelasan.,2744,1,7974
"+ aes(y='LUAS WILAYAH (KM2)', x='JUMLAH', color='JUMLAH')",2847,2,8386
Ikuti contoh pada soal untuk melengkapi coding yang kosong. ,2756,1,8125
Pastikan kamu telah menuliskan kode yang telah dicontohkan untuk menentukan jumlah non-missing value untuk kolom city pada dataset retail_raw dengan menggunakan method count. ,1517,1,7520
Dengan cara yang sama kamu dapat melakukan untuk menentukan jumlah non-missing value untuk kolom product_id pada dataset retail_raw dengan menggunakan method count tentunya. ,1517,2,7521
"Pastikan kamu telah 
* menghitung quantile .25 dan 0.75 pada kolom quantity data frame retail_raw.
* menghitung inter quartile range (IQR)
* mencetak ukuran dataset
* membuang datum-datum yang outliers sesuai dengan kondisi yang diberikan
* mencetak kemabli ukuran dateset.",1534,1,7532
"Kode lengkap:

# Q1, Q3, dan IQR
Q1 = retail_raw['quantity'].quantile(0.25)
Q3 = retail_raw['quantity'].quantile(0.75)
IQR = Q3 - Q1

# Check ukuran (baris dan kolom) sebelum data yang outliers dibuang
print('Shape awal: ', retail_raw.shape)

# Removing outliers
retail_raw = retail_raw[~((retail_raw['quantity'] < (Q1 - 1.5 * IQR)) | (retail_raw['quantity'] > (Q3 + 1.5 * IQR)))]

# Check ukuran (baris dan kolom) setelah data yang outliers dibuang
print('Shape akhir: ', retail_raw.shape)",1534,2,7533
"Gunakan function labs(title = ""…"", …) dan masukkan parameter sesuai permintaan soal untuk mengisi bagian […]. Perhatikan penggunaan huruf besar/kecil dan spasi.",185,1,8882
"Pastikan kamu telah 
* menghitung quantile .25 dan 0.75 pada kolom item_price data frame retail_raw.
* menghitung inter quartile range (IQR)
* mencetak ukuran dataset
* membuang datum-datum yang outliers sesuai dengan kondisi yang diberikan
* mencetak kembali ukuran dataset.",1535,1,7546
"Kode lengkap:

# Q1, Q3, dan IQR
Q1 = retail_raw['item_price'].quantile(0.25)
Q3 = retail_raw['item_price'].quantile(0.75)
IQR = Q3 - Q1

# Check ukuran (baris dan kolom) sebelum data yang outliers dibuang
print('Shape awal: ', retail_raw.shape)

# Removing outliers
retail_raw = retail_raw[~((retail_raw['item_price'] < (Q1 - 1.5 * IQR)) | (retail_raw['item_price'] > (Q3 + 1.5 * IQR)))]

# Check ukuran (baris dan kolom) setelah data yang outliers dibuang
print('Shape akhir: ', retail_raw.shape)",1535,2,7547
"- matshow()
- sns.heatmap(raw_data.corr(), annot=True)
- plt.title('Plot correlation matriks dengan sns.heatmap', size=14)
- plt.tight_layout()
- plt.show()",2756,2,8126
"+ theme(figure_size=(10, 5))",2853,2,8400
Gunakan import pickle dan import kmodes untuk menyelesaikan soal ini.,2816,1,8277
"kproto = KPrototypes(n_clusters=5, random_state = 75)  
kproto = kproto.fit(df_model, categorical=[0,1,2])  
  
pickle.dump(kproto, open('cluster.pkl', 'wb'))",2816,2,8278
"Seperti yang dijelaskan dalam paragraf ketiga, tertera nama file, nama package, dan nama-nama fungsi yang digunakan",2519,1,8841
"Package : readr,
Nama variabel : chocolates, 
Fungsi : col_factor",2519,2,8842
Pada saat memasukkan link json kedalam fungsi get () pastikan penulisan link tersebut diapit tanda '___',2653,1,7769
Gunakan (resp.headers) untuk menampilkan jawaban dari pertanyaan. ,2657,1,7773
Lengkapi coding yang kosong dengan method keys(). ,2663,1,7776
Untuk menjawab pertanyaan diakhiri dengan _persen ,2663,2,7777
Ikuti perintah soal dan isikan bagian kode yang hilang. ,2694,1,7876
"2 metode yang digunakan di sini adalah std() dari pandas dan dari numpy np.std",2694,2,7877
Isi data = df_penduduk dan gunakan geom_histogram(),2848,1,8387
"(ggplot(data=df_penduduk)
+ aes(x='LUAS WILAYAH (KM2)')
+ geom_histogram()",2848,2,8388
Ikuti petunjuk berupa gambar yang ada pada penjelasan.,2745,1,7975
Gunakan fungsi .boxplot dan untuk menampilkan judul gunakan fungsi plt.title,2760,1,8127
"- boxplot()
- plt.title()
- plt.show()
- kolom yang digunakan 'Produk'",2760,2,8128
Coba perhatikan pada beberapa chapter sebelumnya. Terdapat petunjuk untuk mengerjakan quiz ini.,2770,1,8025
Ketikkan query seperti yang dicontohkan pada gambar. ,2776,1,8185
Penulisan pada konsol bebas; tidak mengikuti huruf besar kecil pun tidak masalah. ,2776,2,8186
Gunakan fungsi kproto.predict untuk menampilkan clusters. ,2817,1,8279
"df_final = df.copy()    
df_final['cluster'] = clusters    
print(df_final.head())",2817,2,8280
"Gunakan function geom_histogram seperti pada contoh, dan gantilah parameter bindwidth dengan nilai 10000.",200,1,8883
Gunakan fungsi print untuk menampilkan data. ,2835,1,8330
print (df_penduduk.head()),2835,2,8331
"import matplotlib.pyplot as plt
from plotnine import *
(ggplot(data=df_penduduk)
+ aes(x='NAMA KABUPATEN/KOTA', y='JUMLAH')
+ geom_col()
).draw()
plt.show()",2838,2,8361
" Ingat bahwa secara definisi, ""NAMA KABUPATEN/KOTA"" masih merupakan x-axis, dan ""JUMLAH"" masih merupakan y-axis. Hanya saja, lokasi mereka ditukar, dari yang tadinya horizontal menjadi vertikal (dan sebaliknya).",2840,1,8369
"+ labs(title='Jumlah penduduk per kabupaten/kota di DKI Jakarta (2013)',
x='Kabupaten/Kota',
y='Jumlah Penduduk')",2840,2,8370
Gunakan fungsi corr() untuk menampilkan data seperti yang diminta soal. ,2720,1,7878
"Bagian yang kosong diisi sesuai dengan urutan yang ditugaskan. 

print (raw_data.corr())
print (raw_data.corr(method='kendall'))
print (raw_data.corr(method='spearman'))",2720,2,7879
" Jangan lupa untuk memberikan tanda petik di pada stat(count/max(count)) 
(seharusnya adalah 'stat(count/max(count))' ). Kalau tidak menggunakan tanda petik, maka akan muncul error.",2849,1,8389
"+ aes(x='LUAS WILAYAH (KM2)', y='stat(count/max(count))')",2849,2,8390
"Hapus bagian ___ di konsol, lalu ketikkan seperti pada contoh di soal. ",2777,1,8187
"Saat mengetikkan query ke dalam konsol, boleh menggunakan huruf besar / kecil. ",2777,2,8188
Lengkapi code dengan urutan yang diminta pada soal dengan mengganti ____ ,2783,1,8212
"Hati-hati tanda baca koma (,) jangan sampai terhapus pada saat mengisi jawaban. ",2783,2,8213
"Gunakan range 0,5 sesuai dengan contoh output yang ingin ditampilkan pada soal. ",2818,1,8281
"for i in range (0,5):  
    print('\nPelanggan cluster: {}\n'.format(i))  
    print(df_final[df_final['cluster']== i])",2818,2,8282
Input seperti gambar di soal pada konsol. ,2833,1,8332
"import matplotlib.pyplot as plt
import plotnine as p9
import pandas as pd",2833,2,8333
"Gunakan fungsi scatter_matrix untuk menyelesaikan soal. 
Selalu ingat kamu sudah import matplotlib.pyplot as plt karena akan menampilkan grafik. ",2763,1,8137
"Kamu harus memastikan bahwa untuk
* pengecekan kolom yang memiliki missing data  digunakan chaining method .isnull() dan .any() pada dataframe retail_raw
* filling missing value (imputasi) dengan mean juga digunakan chaining method .fillna(...) dan .mean() pada kolom quantity dataframe retail_raw
* Drop missing value digunakan method .dropna() pada kolom quantity dataframe retail_raw",1529,1,9092
"Kode lengkap:

# Check kolom yang memiliki missing data
retail_raw.isnull().any()

# Filling the missing value (imputasi)
retail_raw['quantity'].fillna(retail_raw.quantity.mean())

# Drop missing value
retail_raw['quantity'].dropna()",1529,2,9093
"Kode lengkap:

from sklearn.linear_model import LogisticRegression
from sklearn.metrics import confusion_matrix

# Inisiasi model logreg
logreg = LogisticRegression()

# fit the model with data
logreg.fit(X_train, y_train)

# Predict model
y_pred=logreg.predict(X_test)

# Evaluasi model menggunakan confusion matrix
cnf_matrix = confusion_matrix(y_test, y_pred)
print('Confusion Matrix:\n', cnf_matrix)",2623,2,7690
 Tambahkan fungsi geom_boxplot() setelah anda mendefinisikan aes() untuk membuat boxplot tersebut.,2850,1,8391
Lengkapi syntax pada konsol seperti contoh pada soal. ,2761,1,8131
Hasilkan 5 grafik dari Produk A hingga Produk E dan gunakan fungsi .hist(). ,2761,2,8132
+ geom_boxplot(),2850,2,8392
Masukan query seperti contoh pada bagian theory.,2778,1,8189
Penggunaan huruf besar tidak berpengaruh. ,2778,2,8190
"Ubah bagian yang kosong pada coding, dengan list library yang akan dipanggil. 
Lalu gunakan from kmodes untuk import KModes. ",2797,1,8249
"Sesuaikan bagian yang kosong agar terisi seperti berikut : 

import pandas as pd  
import matplotlib.pyplot as plt  
import seaborn as sns  
from sklearn.preprocessing import LabelEncoder  
from kmodes.kmodes import KModes  
from kmodes.kprototypes import KPrototypes  
import pickle  
from pathlib import Path  ",2797,2,8250
Kamu dapat mengisi data = df_penduduk,2837,1,8357
"Pastikan mengisi x-axis dengan variabel NAMA KABUPATEN/KOTA , dan y-axis menggunakan variabel JUMLAH .",2837,2,8358
Lengkapi bagian kode yang kosong seperti yang ditampilkan oleh soal. ,2687,1,7881
"Kode lengkap:

import matplotlib.pyplot as plt

# Kolom tahun transaksi pertama
df['Year_First_Transaction'] = df['First_Transaction'].dt.year
# Kolom tahun transaksi terakhir
df['Year_Last_Transaction'] = df['Last_Transaction'].dt.year

df_year = df.groupby(['Year_First_Transaction'])['Customer_ID'].count()
df_year.plot(x='Year_First_Transaction', y='Customer_ID', kind='bar', title='Graph of Customer Acquisition')
plt.xlabel('Year_First_Transaction')
plt.ylabel('Num_of_Customer')
plt.tight_layout()
plt.show()",2615,1,7707
"Pastikan kamu telah
* mengimport library yang diperlukan
* membuat kolom baru seperti yang diinstruksikan dengan menggunakan kolom yang bertipe datetime melalui penggunaan attribut dt dan year secara berantai
* kelompokkanlah jumlah customer berdasarkan kolom Year_First_Transaction ke dalam variabel df_year
* plotkanlah variabel df_year dengan menggunakan tipe grafik bar chart dengan kustomisasi seperti grafik yang ditampilkan.",2615,2,7708
Gunakan fungsi mean () dan penulisan nama kolom pendapatan yang tepat. ,2687,2,7882
"Pastikan kamu telah
* mengimport library yang diperlukan
* kelompokkanlah jumlah transaksi berdasarkan kolom Year_First_Transaction ke dalam variabel df_year
* plotkanlah variabel df_year dengan menggunakan tipe grafik bar chart dengan kustomisasi seperti grafik yang ditampilkan.",2616,1,7711
"Kode lengkap:

import matplotlib.pyplot as plt

plt.clf()
df_year = df.groupby(['Year_First_Transaction'])['Count_Transaction'].sum()
df_year.plot(x='Year_First_Transaction', y='Count_Transaction', kind='bar', title='Graph of Transaction Customer')
plt.xlabel('Year_First_Transaction')
plt.ylabel('Num_of_Transaction')
plt.tight_layout()
plt.show()",2616,2,7712
Ikuti contoh syntax yang telah disediakan. ,2762,1,8133
"Pastikan kamu telah
* mengimport library yang diperlukan yaitu matplotlib.pyplot dan seaborn sebagai aliasnya
* gunakan pointplot dari seaborn dengan keyword argumen data adalah pengelompokkan df berdasarkan kolom 'Product' dan 'Year_First_Transaction' yang kemudian diagregasi dengan nilai rata-ratanya
* untuk kustomisasi grafik silakan perhatikan grafik yang ditampilkan.",2617,1,7715
"Kode lengkap:

import matplotlib.pyplot as plt
import seaborn as sns

plt.clf()
sns.pointplot(data = df.groupby(['Product', 'Year_First_Transaction']).mean().reset_index(), 
              x='Year_First_Transaction', 
              y='Average_Transaction_Amount', 
              hue='Product')
plt.tight_layout()
plt.show()",2617,2,7716
Gunakan perintah print().,1247,1,8002
"Ketikkan Hello World! yang diapit oleh tanda petik """", seperti ""Hello World!"".",1247,2,8003
"Pastikan kamu telah
* membuat variabel df_piv yang merupakan hasil penerapan pd.pivot_table pada index 'is_churn', kolom 'Product', value-nya 'Customer_ID', dan fungsi aggregasi 'count',
* membuat varibel  plot_product yang merupakan count dari df_piv untuk lima data teratasnya
* melakukan reindex df_piv dengan menggunakan variabel plot_product
* memvisualisasikan pie chart dengan menerapkan chaining df_piv.plot.pie untuk kustomisasi grafik seperti yang ditampilkan.",2618,1,7719
"Kode lengkap:

import matplotlib.pyplot as plt

plt.clf()
# Melakukan pivot data
df_piv = df.pivot_table(index='is_churn', 
                        columns='Product',
                        values='Customer_ID', 
                        aggfunc='count', 
                        fill_value=0)
# Mendapatkan Proportion Churn by Product
plot_product = df_piv.count().sort_values(ascending=False).head(5).index
# Plot pie chartnya
df_piv = df_piv.reindex(columns=plot_product)
df_piv.plot.pie(subplots=True,
                figsize=(10, 7),
                layout=(-1, 2),
                autopct='%1.0f%%',
                title='Proportion Churn by Product')
plt.tight_layout()
plt.show()",2618,2,7720
Sumbu x diisikan dengan Pendapatan dan sumbu y diisikan dengan Total. ,2762,2,8134
Pastikan kamu telah mengunakan pd.to_datetime untuk merubah suatu nilai menjadi bertipe datetime.,2611,1,7735
"Kode lengkap:

# Kolom First_Transaction
df['First_Transaction'] = pd.to_datetime(df['First_Transaction']/1000, unit='s', origin='1970-01-01')
# Kolom Last_Transaction
df['Last_Transaction'] = pd.to_datetime(df['Last_Transaction']/1000, unit='s', origin='1970-01-01')

print('Lima data teratas:')
print(df.head())

print('\nInfo dataset:')
print(df.info())",2611,2,7736
dijelaskan konteks nya.,2629,1,7741
syntax nya seperti ,2629,2,7742
"Lengkapi bagian yang kosong pada live code sesuai dengan perintah, yaitu cetak resp. ",2656,1,7770
Perhatikan tanda baca yang digunakan pada saat menuliskan keys(),2659,1,7774
Gunakan pandas untuk import dataframe dan melihat list_perkembangan. ,2664,1,7778
"Ketikkan True untuk melanjutkan ke materi selanjutnya. 
",2652,1,7786
"Pastikan bahwa kamu telah
* mengeksplorasi data menggunakan method corr dari dataframe data
* mengeksplorasi data dengan menggunakan method group_by berdasarkan kolom 'Clicked on Ad' dan men-chaining dengan method size.",2466,1,8191
Gunakan right() untuk mendapatkan tahun dari order date.,1737,1,8416
"Jawab lengkap langkah ke-2 dan ke-3 ini adalah

#2. Data eksplorasi dengan dengan mengecek korelasi dari setiap feature menggunakan fungsi corr()
print(""\n[2] Data eksplorasi dengan dengan mengecek korelasi dari setiap feature menggunakan fungsi corr()"")
print(data.corr())

#3. Data eksplorasi dengan mengecek distribusi label menggunakan fungsi groupby() dan size()
print(""\n[3] Data eksplorasi dengan mengecek distribusi label menggunakan fungsi groupby() dan size()"")
print(data.groupby('Clicked on Ad').size())",2466,2,8192
join table subscription dan customer,2784,1,8216
join subscription kolom customer_id dengan customer kolom id,2784,2,8217
Input value i berupa kolom_categorical dan mengisi false pada bagian ax.axes.yaxis.set_visible(False),2820,1,8285
"for i in kolom_categorical:  
    plt.figure(figsize=(6,4))  
    ax = sns.countplot(data = df_final, x = 'cluster', hue = i )  
    plt.title('\nCount Plot {}\n'.format(i), fontsize=12)  
    ax.legend(loc=""upper center"")  
",2820,2,8286
"Fungsi MOD atau modulo digunakan untuk menetukan sisa pembagian suatu kolom dari suatu bilangan. Sedangkan, fungsi EXP digunakan untuk menghitung nilai exponensial suatu kolom.
Contoh:
MOD(7, 3) = 1
EXP(1) = 2.71828...",1611,1,7883
"Pastikan kamu telah
* meng-create sebuah fungsi func untuk mengkategorikan jumlah tranksaksi berdasarkan tabel yang diberikan
* membuat kolom baru dengan nama Count_Transaction_Group yang merupakan penerapan fungsi func yang telah dibuat sebelumnya
* melakukan pengelompokan berdasarkan kolom baru untuk setiap pelanggan dan kemudian menerapkan agregasi yang menghitung jumlah kategori transaksi tersebut
* memvisualisasikan dengan jenis grafik berupa bar chart berdasarkan kustomisasi yang diperlihatkan.",2619,1,7723
"Kode lengkap:

import matplotlib.pyplot as plt

plt.clf()
# Kategorisasi jumlah transaksi
def func(row):
    if row['Count_Transaction'] == 1:
        val = '1. 1'
    elif (row['Count_Transaction'] >1 and row['Count_Transaction'] <= 3):
        val ='2. 2 - 3'
    elif (row['Count_Transaction'] >3 and row['Count_Transaction'] <= 6):
        val ='3. 4 - 6'
    elif (row['Count_Transaction'] >6 and row['Count_Transaction'] <= 10):
        val ='4. 7 - 10'
    else:
        val ='5. >10'
    return val
# Tambahkan kolom baru
df['Count_Transaction_Group'] = df.apply(func, axis=1)

df_year = df.groupby(['Count_Transaction_Group'])['Customer_ID'].count()
df_year.plot(x='Count_Transaction_Group', y='Customer_ID', kind='bar', title='Customer Distribution by Count Transaction Group')
plt.xlabel('Count_Transaction_Group')
plt.ylabel('Num_of_Customer')
plt.tight_layout()
plt.show()",2619,2,7724
"Pastikan fungsi MOD dan EXP digunakan pada kolom bertipe numerik (ineteger atau float). Jika diinginkan perubahan nama kolomnya gunakan alias.
SELECT MOD(nama_kolom1) AS mod_kolom1, EXP(nama_kolom2) AS exp_kolom2 FROM tabel;",1611,2,7884
"Pastikan kamu telah
* meng-create sebuah fungsi f untuk mengkategorikan jumlah tranksaksi berdasarkan tabel yang diberikan
* membuat kolom baru dengan nama Average_Transaction_Amount_Group yang merupakan penerapan fungsi f yang telah dibuat sebelumnya
* melakukan pengelompokan berdasarkan kolom baru untuk setiap pelanggan dan kemudian menerapkan agregasi yang menghitung jumlah kategori transaksi tersebut
* memvisualisasikan dengan jenis grafik berupa bar chart berdasarkan kustomisasi yang diperlihatkan.",2620,1,7727
"Kode lengkap:

import matplotlib.pyplot as plt

plt.clf()
# Kategorisasi rata-rata besar transaksi
def f(row):
    if (row['Average_Transaction_Amount'] >= 100000 and row['Average_Transaction_Amount'] <=200000):
        val ='1. 100.000 - 250.000'
    elif (row['Average_Transaction_Amount'] >250000 and row['Average_Transaction_Amount'] <= 500000):
        val ='2. >250.000 - 500.000'
    elif (row['Average_Transaction_Amount'] >500000 and row['Average_Transaction_Amount'] <= 750000):
        val ='3. >500.000 - 750.000'
    elif (row['Average_Transaction_Amount'] >750000 and row['Average_Transaction_Amount'] <= 1000000):
        val ='4. >750.000 - 1.000.000'
    elif (row['Average_Transaction_Amount'] >1000000 and row['Average_Transaction_Amount'] <= 2500000):
        val ='5. >1.000.000 - 2.500.000'
    elif (row['Average_Transaction_Amount'] >2500000 and row['Average_Transaction_Amount'] <= 5000000):
        val ='6. >2.500.000 - 5.000.000'
    elif (row['Average_Transaction_Amount'] >5000000 and row['Average_Transaction_Amount'] <= 10000000):
        val ='7. >5.000.000 - 10.000.000'
    else:
        val ='8. >10.000.000'
    return val
# Tambahkan kolom baru
df['Average_Transaction_Amount_Group'] = df.apply(f, axis=1)

df_year = df.groupby(['Average_Transaction_Amount_Group'])['Customer_ID'].count()
df_year.plot(x='Average_Transaction_Amount_Group', y='Customer_ID',kind='bar', title='Customer Distribution by Average Transaction Amount Group')
plt.xlabel('Average_Transaction_Amount_Group')
plt.ylabel('Num_of_Customer')
plt.tight_layout()
plt.show()",2620,2,7728
"Pastikan kamu telah
* mengimport library yang dibutuhkan, dengan aliasnya telah diberikan di predefined code
* membuat visualisasi dengan heatmap dengan data berupa dataframe dari variabel cnf_matrix yang telah dihitung pada sub-chapter sebelumnya
* mengkustomisasi grafik sesuai dengan grafik yang ditampilkan. ",2624,1,7731
"Kode lengkap:

# import required modules
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

plt.clf()
# name  of classes
class_names = [0, 1] 
fig, ax = plt.subplots()

tick_marks = np.arange(len(class_names))
plt.xticks(tick_marks, class_names)
plt.yticks(tick_marks, class_names)

# create heatmap
sns.heatmap(pd.DataFrame(cnf_matrix), annot=True, cmap='YlGnBu', fmt='g')
ax.xaxis.set_label_position('top')
plt.title('Confusion matrix', y=1.1)
plt.ylabel('Actual')
plt.xlabel('Predicted')
plt.tight_layout()
plt.show()",2624,2,7732
"Jangan mengubah format pada live code editor. 
cov_jabar_tidy = (cov_jabar.drop(columns=[item for item in cov_jabar.columns 
                                               if item.startswith('AKUMULASI') 
                                                  or item.startswith('DIRAWAT')])
                           .rename(columns=str.lower)
                           .rename(columns={'kasus': 'kasus_baru'})
                  )
cov_jabar_tidy['tanggal'] = pd.to_datetime(cov_jabar_tidy['tanggal']*1e6, unit='ns')
print('Lima data teratas:\n', cov_jabar_tidy.head())",2665,1,7779
"Untuk membantu mengisi bagian resampling : 

cov_jabar_pekanan = (cov_jabar_tidy.set_index('tanggal')['kasus_baru']
                                   .resample('W')
                                   .sum()
                                   .reset_index()
                                   .rename(columns={'kasus_baru': 'jumlah'})",2671,1,7783
Gunakan fungsi print() seperti yang sudah dilakukan sebelumnya,1248,1,8004
"Gantilah _ _ _ dengan ""Halo Dunia"" dan ""Riset Bahasa Python"" seperti yang sudah diinstruksikan pada Tugas ",1248,2,8005
"Pada number_of_order, yang ditampilkan hanya order dengan status finished",1737,2,8417
"_, ax = plt.subplots(1, 1, figsize=(10,10)) --> pada bagian ini tidak ada coding yang perlu dilengkapi. 
Jangan mengganti apa pun agar dapat menghasilkan grafik seperti pada soal. ",2763,2,8138
"Pastikan kamu sudah dengan benar mengimport fungsi yang akan  digunakan : 

from pandas.plotting import scatter_matrix
import matplotlib.pyplot as plt",2764,1,8139
"_, ax = plt.subplots(1, 1, figsize=(10,10)) --> bagian ini tidak ada yang perlu dilengkapi, tidak perlu ada yang diubah. 
Ingat, di sini yang digunakan adalah fungsi scatter_matrix. ",2764,2,8140
Gunakan fungsi df.info() ,2799,1,8253
Isi nilai df_final dengan : df_final['segmen'] = df_final['cluster'].map({,2821,1,8287
Pastikan kamu menggunakan fungsi print() untuk menampilkan hasil datanya. ,2821,2,8288
Ketik nama variable langsung pada bagian […].,364,1,8843
Tambahkan aesthetic fill dengan input NAMA.KABUPATEN.KOTA di bagian […].,201,1,8884
"Klik tombol Toggling Editor, letaknya di sebelah kanan tombol Hint.",995,1,8929
"*) Ketikkanlah potongan kode yang sesuai dengan jalan mengganti _ _ _ pada code editor sesuai dengan urutan yang dicontohkan. 
*) Pastikan juga setiap fitur yang diberikan tercakup semua di code editor.",1332,1,9015
"Penggunaan fitur pada suatu str dilakukan dengan format nama_str.nama_fitur(argumen); dengan 
*) nama_str adalah nama variabel bertipe str, 
*) .nama_fitur() merupakan fitur-fitur yang dapat digunakan untuk sebuat tipe data str, dan 
*) argument dapat berupa variabel/bertipe data tertentu/blank seperti yang dinyatakan dalam tabel.",1332,2,9016
"Stacking kembali data yang telah diunstacking melalui penerapan method .stack() pada dataframe data_unstack. 
Berdasarkan data stacking ini kamu swap level kolomnya dan kemudian kamu sort berdasarkan index.",2221,1,8426
"Pastikan urutan yang kamu lakukan sesuai dengan yang diinstruksikan dan dicontohkan, yaitu stacking, swapping dan sorting.",2221,2,8427
"Apakah Anda sudah menyatukan dic1, dic2, dan dic3 dalam sebuah tuple ketika mau ditempatkan dalam perulangan?",1279,1,8436
"Gunakan .update() untuk mengupdate nilai yang ada di dalam tipe data ""dict""!",1279,2,8437
"Kerjakan seperti yang diperintahkan pada soal dengan latihan seperti yang dicontohkan. 
Pastikan pada code editor hanya berisi tugas yang perlu dikerjakan. ",524,1,8442
"print(10*2+5)
print(""Academy DQLab"")",524,2,8443
Masukkan variable data.pelanggan sebagai input untuk function str.,365,1,8844
"Silakan diganti _ _ _ pada code editor sesuai dengan deskripsi yang dicontohkan dan memastikan bahwa
* library pandas telah diimport
* membaca dataset yang disediakan
* mencetak ukuran dari dataset
* mencetak lima data teratas dari dataset",1447,1,8472
Pastikan syntax yang kamu tuliskan telah dengan benar diketikkan.,1447,2,8473
Pastikan kamu telah menyelesaikan membuat sebuah fungsi iqr yang digunakan nanti sebagai fungsi aggregasi setelah menerapkan proses pengelompokkan dengan groupby.,2229,1,9060
"Fungsi iqr menggunakan series sebagai input argument-nya dan outputnya adalah IQR. Gunakan fungsi ini pada aggregasi setelah pengelompokan, yaitu
[nama_dataframe].groupby([nama_kolom]).agg(iqr)",2229,2,9061
"Pastikan  Anda telah:
(1) membaca dataset, membuat kolom order_month (gunakan fungsi .apply()) dan gmv
(2) dataset yang akan Anda plot telah di-group berdasarkan kolom order_date dan menggunakan .nunique()",1477,1,8480
Pastikan Anda telah menginfer dari grafik yang ditampilkan bahwa komponen-komponen line chartnya telah sesuai.,1477,2,8481
Pastikan telah mengimport library pandas sebagai aliasnya pd.,1420,2,8485
Gunakan fungsi .shape pada data frame yang telah dibuat.,1423,1,8486
Pastikan kamu telah mengimport library pandas sebagai aliasnya dan membaca dataset dengan pd.read_csv().,1423,2,8487
"Pastikan kamu telah mengimport pandas dengan aliasnya, membaca file csv yang telah diberikan dan telah mendeskrispsikan summary statistic-nya.",1430,1,8490
Pastikan kamu menggunakan fungsi loc yang di-chain dengan median.,1430,2,8491
Pastikan kamu telah menggunakan fungsi loc untuk megambil kolom product_weight_gram.,1434,1,8496
Pastikan kamu telah menggunakan fungsi .std dan .var masing-masingnya pada data frame yang telah Anda pilih kolomnya.,1434,2,8497
Masukkan variable yang digunakan untuk menyimpan data pembacaan Excel ke dalam function summary.,371,1,8845
Pastikan kamu telah benar memilih kolom product_weight_gram sebelum menghitung quartile 1 dan 3.,1436,1,8500
Pastikan kamu telah menghitung inter quartile range-nya sebagai selisih quartile 3 dengan quartile 1.,1436,2,8501
Pastikan kamu telah menggunakan fungsi rename pada data frame order_df.,1438,1,8502
Pastikan kamu telah mengganti kolom freight_value menjadi shipping_cost.,1438,2,8503
Tambahkan layer menggunakan function berprefix geom_ untuk line chart.,194,1,8887
Tidak ada yang perlu dirubah atau ditambahkan.,209,1,8932
Pastikan kamu telah menggunakan kolom price per payment_type.,1440,1,8508
Pastikan kamu telah menggunakan fungsi .groupby() yang di-chaining dengan .mean() untuk menghitung rata-rata.,1440,2,8509
Pastikan kamu telah menggunakan fungsi .sort_values().,1442,1,8512
Pastikan kamu telah mengurutkannya berdasarkan kolom price dan diurut dari besar ke kecil.,1442,2,8513
Pastikan kamu dengan benar telah mengetikkan kode yang telah dicontohkan. Untuk multi-line chart ini kamu harus mengelompokkan kolom dataset berdasarkan dimensi order_month dan brand.,1483,1,8518
"Kode lengkap untuk membuat multi-line chart berdasarkan dataset yang telah tersedia adalah

dataset.groupby(['order_month','brand'])['gmv'].sum().unstack().plot()
plt.title('Monthly GMV Year 2019 - Breakdown by Brand',loc='center',pad=30, fontsize=20, color='blue')
plt.xlabel('Order Month', fontsize = 15)
plt.ylabel('Total Amount (in Billions)',fontsize = 15)
plt.grid(color='darkgray', linestyle=':', linewidth=0.5)
plt.ylim(ymin=0)
labels, locations = plt.yticks()
plt.yticks(labels, (labels/1000000000).astype(int))
plt.gcf().set_size_inches(10, 5)
plt.tight_layout()
plt.show()",1483,2,8519
"Pastikan kamu telah mengimport keempat library yang diperlukan: Pandas, Numpy, io, dan pandas_profiling. Dua library yang pertama diimport sebagai aliasnya. Kemudian bacalah dataset dari sumber yang diberikan melalui tautan dan assign ke dalam nama retail_raw.",1513,1,8524
"Code lengkap:

import pandas as pd
import numpy as np
import io
import pandas_profiling
retail_raw = pd.read_csv('https://storage.googleapis.com/dqlab-dataset/retail_raw_reduced_data_quality.csv')",1513,2,8525
Gunakan read_csv yang ada pada library pandas untuk melakukan pembacaan dataset dan pena,1876,1,8618
Separator yang digunakan pada dataset berupa tab atau '\t' karena file berupa tsv (tab-separated values),1876,2,8619
"Pastikan kamu telah
* mengimport pandas sebagai aliasnya
* membaca dataset
* melakukan inspeksi dataset dengan meninjau 5 data teratas (.head) dan infonya (.info)",2610,1,8625
"Kode lengkap:

import pandas as pd

df = pd.read_csv('https://storage.googleapis.com/dqlab-dataset/data_retail.csv', sep=';')

print('Lima data teratas:')
print(df.head())

print('\nInfo dataset:')
print(df.info())",2610,2,8626
Lengkapi coding pada konsol dengan mengisikan sumbu x dan y sesuai dengan instruksi. ,2730,1,8631
Pastikan menggunakan plt.show() untuk menampilkan grafik. ,2730,2,8632
"Pastikan kamu telah membuat dataframe yang diassign sebagai variabel pollutant dari dataset 'global_air_quality.csv'. Kemudian, kamu mengelompokkan data berdasarkan kolom yang diperintahkan dan menggunakan data pertama dan data terakhir untuk satu kelompok data yang sama sebagai fungsi aggregasinya.",2227,1,8657
"Dataframe yang dikelompokkan dengan groupby memiliki syntax umum berupa
     [nama_dataframe].groupby([nama_kolom]).[nama_fungsi_aggregasi]
dengan
[nama_dataframe] --> nama variabel dataframe
[nama_kolom] --> nama atau nama-mama kolom dari dataframe untuk di-groupby
[nama_fungsi_aggregasi] --> nama fungsi aggregasi yang diaplikasikan untuk sub bab ini kita menggunakan first dan last.",2227,2,8658
"Kode lengkap:

# Check ukuran (baris dan kolom) sebelum data duplikasi dibuang
print('Shape awal: ', retail_raw.shape)

# Buang data yang terduplikasi
retail_raw.drop_duplicates(inplace=True)

# Check ukuran (baris dan kolom) setelah data duplikasi dibuang
print('Shape akhir: ', retail_raw.shape)",1537,2,8668
"Pastikan kamu telah
* mengimport dataset csv ke variable bernama uncleaned_raw 
* melakukan inpseksi uncleaned_raw  dengan head dan apakah ada missing value
* menghitung persentase data yang missing value
* melakukan imputasi pada kolom Quanity untuk mengisi missing value dengan nilai mean-nya.",1532,1,8528
"Kode lengkap:

# Baca dataset uncleaned_raw.csv
uncleaned_raw = pd.read_csv('https://storage.googleapis.com/dqlab-dataset/uncleaned_raw.csv')

#inspeksi dataframe uncleaned_raw
print('Lima data teratas:') 
print(uncleaned_raw.head())

#Check kolom yang mengandung missing value
print('\nKolom dengan missing value:') 
print(uncleaned_raw.isnull().any())

#Persentase missing value
length_qty = len(uncleaned_raw['Quantity'])
count_qty = uncleaned_raw['Quantity'].count()

#mengurangi length dengan count
number_of_missing_values_qty = length_qty - count_qty

#mengubah ke bentuk float
float_of_missing_values_qty = float(number_of_missing_values_qty / length_qty) 

#mengubah ke dalam bentuk persen
pct_of_missing_values_qty = '{0:.1f}%'.format(float_of_missing_values_qty*100) 

#print hasil percent dari missing value
print('Persentase missing value kolom Quantity:', pct_of_missing_values_qty)

#Mengisi missing value tersebut dengan mean dari kolom tersebut
uncleaned_raw['Quantity'] = uncleaned_raw['Quantity'].fillna(uncleaned_raw['Quantity'].mean())",1532,2,8529
"Pastikan kamu telah 
* mengimport library pandas sebagai aliasnya;
* membaca dataset dan meng-assign-nya ke variabel dataset; dan
* mencetak ukuran, lima data teratas, informasi, dan statistik deskriptif dari dataset.",1553,1,8530
"Pergunakan 
* pd.read_csv untuk membaca dataset;
* method .shape, .head(), .info(), dan .describe() pada variabel dataset untuk mengetahui ukuran, lima data teratas, informasi, dan statistik deskriptif dari dataset.",1553,2,8531
Pastikan kamu telah menggunakan .median() untuk melakukan imputasi sebagai argument pada method .fillna(),1566,1,8534
"Untuk proses imputasi kamu dapat menggunakan kode berikut

dataset1.fillna(dataset1.median(), inplace = True)",1566,2,8535
"Pastikan kamu telah 
* mengimport DecisionTreeClassifier  dari sklearn.tree dan memanggil classifier tersebut dengan decision_tree,
* men-split dataset ke dalam training & testing dataset dengan perbandingan 70:30, dan random_state = 0
* melatih model dengan nama variabel decision_tree dengan fungsi .fit()
* menggunakan fungsi score dari nama variabel decision_tree untuk mengetahui akurasi training dan testing.",1582,1,8536
"Kode lengkapnya adalah

from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier

# splitting the data
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.3, random_state = 0)

# Call the classifier
decision_tree = DecisionTreeClassifier()
# Fit the classifier to the training data
decision_tree = decision_tree.fit(X_train,y_train)

# evaluating the decision_tree performance
print('Training Accuracy :', decision_tree.score(X_train, y_train))
print('Testing Accuracy :', decision_tree.score(X_test, y_test))",1582,2,8537
"Pastikan kamu telah:
* membuang kolom MEDV untuk membuat feature dari dataset dan hanya menggunakan kolom MEDV dari dataset untuk target,
* membagi feature dan target menjadi bagian training dan testing dengan perbandingan 70:30 dan set random_state = 0.
* mengimpor LinearRegression dari sklearn.linear_modeal, dan kemudian membuat regressor dengan nama reg.
* melakukan fit dari bagian training feature dan training target 
* melakukan predict dari bagian testing feature",1585,1,8540
Gunakan import ... as .... untuk menggunakan library yang dibutuhkan,1969,1,8620
Gunakan pd.read_csv untuk melakukan pembacaan dataset,1969,2,8621
Gunakan pd.read_csv untuk import dataset.,2798,1,8633
"df.head() untuk dapat menampilkan data teratas. 
Jangan lupa gunakan fungsi print untuk mencetaknya. ",2798,2,8634
"Pastikan kamu telah membaca dataset global_air_quality.csv, mencetak 5 data teratasnya, mengecek informasi dataset, menghitung jumlah data yang non-missing value, dan mengelompokkannya berdasarkan kolom 'source_name'.",2224,1,8647
"Secara berurutan sesuai dengan deskripsi adalah 
* import pandas sebagai aliasnya, 
* load data dengan pd.read_csv(...), 
* tampikan 5 data teratas dengan .head(), 
* cek informasi dataset tersebut dengan .info()
* hitung jumlah non-missing value dengan .count()
* kelompokkan dengan menggunakan .groupby('source_name').count() dan cetak lima baris teratasnya.",2224,2,8648
"Kode lengkap

#load dataset
import pandas as pd
housing = pd.read_csv('https://storage.googleapis.com/dqlab-dataset/pythonTutorial/housing_boston.csv')
#Data rescaling
from sklearn import preprocessing
data_scaler = preprocessing.MinMaxScaler(feature_range=(0,1))
housing[['RM','LSTAT','PTRATIO','MEDV']] = data_scaler.fit_transform(housing[['RM','LSTAT','PTRATIO','MEDV']])
# getting dependent and independent variables
X = housing.drop(['MEDV'], axis = 1)
y = housing['MEDV']
# checking the shapes
print('Shape of X:', X.shape)
print('Shape of y:', y.shape)

# splitting the data
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.3, random_state = 0)
# checking the shapes  
print('Shape of X_train :', X_train.shape)
print('Shape of y_train :', y_train.shape)
print('Shape of X_test :', X_test.shape)
print('Shape of y_test :', y_test.shape)

##import regressor from Scikit-Learn
from sklearn.linear_model import LinearRegression
# Call the regressor
reg = LinearRegression()
# Fit the regressor to the training data  
reg = reg.fit(X_train,y_train)
# Apply the regressor/model to the test data  
y_pred = reg.predict(X_test)",1585,2,8541
"Kamu harus memastikan bahwa:
* telah mengimport library yang dibutuhkan yaitu pandas sebagai aliasnya dan KMeans dari sklearn.cluster
* membaca dataset
* memilih feature sesuai dengan instruksi
* membuat model cluster yaitu cluster_model menggunakan KMeans, dengan keyword argument jumlah clusternya adalah 5 dan random_state sesuai instruksi
* memprediksi label dari cluster menggunakan method .fit_predict pada cluster_model",1590,1,8542
"Kode lengkap untuk clustering ini yaitu

#import library
import pandas as pd  
from sklearn.cluster import KMeans  

#load dataset
dataset = pd.read_csv('https://storage.googleapis.com/dqlab-dataset/pythonTutorial/mall_customers.csv')   

#selecting features  
X = dataset[['annual_income','spending_score']]  

#Define KMeans as cluster_model  
cluster_model = KMeans(n_clusters = 5, random_state = 24)  
labels = cluster_model.fit_predict(X)",1590,2,8543
"Pastikan kamu telah 
* mengimport library yang dibutuhkan (pandas) sebagai aliasnya
* membca dataset 
* melakukan eksplorasi data dengan head(), info(), describe(), dan shape",1596,1,8546
"Jawab lengkap untuk langkah pertama ini yaitu 

#import library 
import pandas as pd

# Baca data 'ecommerce_banner_promo.csv'
data = pd.read_csv('https://storage.googleapis.com/dqlab-dataset/pythonTutorial/ecommerce_banner_promo.csv')

#1. Data eksplorasi dengan head(), info(), describe(), shape
print(""\n[1] Data eksplorasi dengan head(), info(), describe(), shape"")
print(""Lima data teratas:"")
print(data.head())
print(""Informasi dataset:"")
print(data.info())
print(""Statistik deskriptif dataset:"")
print(data.describe())
print(""Ukuran dataset:"")
print(data.shape)",1596,2,8547
"Pastikan kamu telah mengetikkan kode sesuai dengan contoh yang diberikan. Perlu diingat bahwa string direpresentasikan dengan kutip ganda: ""contoh string"".",2304,1,8550
"import pandas as pd
import matplotlib as mpl
import matplotlib.pyplot as plt
mpl.style.use(""seaborn"")

tabel = (pd.read_csv(""https://storage.googleapis.com/dqlab-dataset/usia_karyawan.csv"")
           .sort_values(""Kelompok Usia"", ascending=False)
           .set_index(""Kelompok Usia"")
         )
tabel[""Laki-laki""] = -tabel[""Laki-laki""]

fig, axes = plt.subplots(1, 2, figsize=(14, 6))
fig.suptitle(""Perbandingan Jumlah Karyawan Laki-laki dan Perempuan\nBerdasarkan Kelompok Usia"", 
             x=0., y=1.1, fontsize=24, fontweight='bold', ha=""left"")
tabel[""Laki-laki""].plot(kind=""barh"", ax=axes[0], color=""tab:blue"", xlim=[-550, 0])
tabel[""Perempuan""].plot(kind=""barh"", ax=axes[1], color=""tab:orange"", fontsize=14, xlim=[0, 550])
axes[0].set_ylabel("""")
axes[0].set_xticklabels([""""])
axes[0].set_yticklabels([""""])
axes[0].legend([""Laki-laki""], fontsize=14, bbox_to_anchor=(0., 0., 1., .05))
axes[0].set_frame_on(False)
axes[1].set_ylabel("""")
axes[1].set_xticklabels([""""])
axes[1].legend([""Perempuan""], fontsize=14, bbox_to_anchor=(0., 0., 0.3, .05))
axes[1].set_frame_on(False)
for i, m, w in zip(range(tabel.shape[0]), list(tabel['Laki-laki']), list(tabel['Perempuan'])):
    axes[0].annotate(str(abs(m)), (m+20, i), xytext=(m+20, i), 
                     color=""w"", va=""center"", ha=""center"", fontsize=14)
    axes[1].annotate(str(abs(w)), (w-20, i), xytext=(w-20, i), 
                     color=""w"", va=""center"", ha=""center"", fontsize=14)
plt.tight_layout()
plt.show()",2304,2,8551
"Pastikan kamu telah mengetikkan kode sesuai dengan contoh yang diberikan. Perlu diingat bahwa string direpresentasikan dengan kutip ganda: ""contoh string"".",2308,1,8554
Gunakan .head(5) untuk menampilkan 5 data teratas,2117,1,8622
Isikan code yang kosong seperti pada contoh. ,2684,1,8629
Perhatikan tanda baca dan jangan mengubah link dataset yang sudah diberikan. ,2684,2,8630
"Lengkapi library yang akan digunakan terlebih dahulu. 

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt",2815,1,8637
"cost = {}  
for k in range(2,10):  
    kproto = KPrototypes(n_clusters = k,random_state=75)  
    kproto.fit_predict(df_model, categorical=[0,1,2])  
    cost[k]= kproto.cost_  
    
sns.pointplot(x=list(cost.keys()), y=list(cost.values()))  
plt.show()  ",2815,2,8638
Import pandas as pd lalu lengkapi data frame sesuai dengan informasi link dataset. ,2834,1,8643
"import pandas as pd 
df_penduduk = pd.read_csv('https://storage.googleapis.com/dqlab-dataset/datakependudukandki-dqlab.csv')
df_inflasi = pd.read_csv('https://storage.googleapis.com/dqlab-dataset/inflasi.csv')",2834,2,8644
"Pastikan dataset telah kamu baca dan kemudian kamu create variabel pollutant dengan tipe DataFrame. Berdasarkan dataframe ini kamu kelompokkan dengan nama kolom yang diinstruksikan dan lakukan fungsi aggregasi 
* penjumlahan data, dan
* menghitung jumlah data yang unik 
tentunya dalam kelompok yang sama.",2226,1,8655
"Dataframe yang dikelompokkan dengan groupby memiliki syntax umum berupa
     [nama_dataframe].groupby([nama_kolom]).[nama_fungsi_aggregasi]
dengan
[nama_dataframe] --> nama variabel dataframe
[nama_kolom] --> nama atau nama-mama kolom dari dataframe untuk di-groupby
[nama_fungsi_aggregasi] --> nama fungsi aggregasi yang diaplikasikan untuk sub bab ini kita menggunakan sum dan nunique",2226,2,8656
"Pastikan kamu dengan benar telah menggunakan fungsi aggregasi sesuai dengan urutan yang diinstruksikan yaitu 'min','median','mean', dan 'max' setelah kamu melakukan proses groupby.",2228,1,8661
"Dataframe yang dikelompokkan dengan groupby memiliki syntax umum berupa
     [nama_dataframe].groupby([nama_kolom]).agg([list_fungsi_aggregasi])
dengan
[nama_dataframe] --> nama variabel dataframe
[nama_kolom] --> nama atau nama-mama kolom dari dataframe untuk di-groupby
[list_fungsi_aggregasi] --> list dari beberapa buah nama fungsi aggregasi yang akan diaplikasikan.",2228,2,8662
"Pastikan kamu telah 
* mengecek terlebih dahulu ukuran dataframe sebelum membuang data terduplikasi
* membuang data yang teduplikasi melalui penggunaan method drop_duplicates
* mengecek kembali ukuran dataframe setelah data terduplikasi dibuang",1537,1,8667
"import pandas as pd
import matplotlib.pyplot as plt

tabel = pd.read_csv(""https://storage.googleapis.com/dqlab-dataset/produktivitas_karyawan.csv"", index_col=""Bulan"") / 1000

fig, ax = plt.subplots(1, 1, figsize=(12, 6))
fig.suptitle(""Best Employee 2019"", x=0.028, y=1.05, fontsize=24, fontweight='bold', ha=""left"")
ax.set_title(""Lima karyawan dengan produktivitas tertinggi\n"", fontsize=18, ha=""right"")

colors = [""tab:gray"", ""tab:gray"", ""tab:gray"", ""tab:gray"", ""darkblue""]
line_widths = [ 1.5, 2, 1, 2.5, 3.]
lp = tabel.plot(kind=""line"", ax=ax, xlim=[0, 11], ylim=[10, 40], color=colors,
                xticks=range(tabel.shape[0]), yticks=[10, 20, 30, 40])

add_lbl_pos = [ 0.3,  0.5,  1.2, -1.0,  0.5]
add_avg_pos = [-0.7, -0.5,  0.2, -2.0, -0.5]
for i, item in enumerate(lp.get_lines()):
    item.set_linewidth(line_widths[i])
    lbl = item.get_label()
    ax.annotate(lbl, (11, tabel.loc[""Desember"", lbl]), (11.2, tabel.loc[""Desember"", lbl] + add_lbl_pos[i]),
                fontweight=""bold"", fontsize=12, color=colors[i], va=""center"",
                arrowprops={""arrowstyle"": ""-"", ""color"": colors[i]})
    ax.annotate(""(avg: %.4f)"" % tabel[lbl].mean(), (11, tabel.loc[""Desember"", lbl]), 
                (11.2, tabel.loc[""Desember"", lbl] + add_avg_pos[i]),
                fontsize=11, color=colors[i], va=""center"")
highest_prod = tabel[""Karyawan E""].max()
ax.annotate(""Produktivitas\ntertinggi\n%.4f"" % highest_prod, (8, highest_prod), (7.75, highest_prod+1.5), 
            ha=""left"", color=colors[-1], arrowprops={""arrowstyle"": ""-"", ""color"": colors[-1]})
ax.set_xticklabels([item[:3] for item in tabel.index], fontsize=12)
ax.set_yticklabels([str(i) for i in [10, 20, 30, 40]], fontsize=12)
ax.set_xlabel("""")
ax.set_ylabel(""Jumlah produk (ribuan)\n"", fontsize=14)
ax.spines[""top""].set_color(""none"")
ax.spines[""right""].set_color(""none"")
ax.spines[""bottom""].set_color(""none"")
ax.get_legend().remove()
plt.show()",2308,2,8555
Secara default .head() akan menampilkan 5 baris teratas. Dengan mengisikan bilangan bulat positif pada .head() seperti .head(7) maka akan menampilkan 7 baris teratas.,1694,1,8558
"Pastikan kamu telah mengimport pandas sebagai aliasnya, dan telah membaca dan menampilkan beberapa baris teratas dari file csv dan tsv.",1694,2,8559
Pastikan kamu telah mengimport pandas dan menggunakan method .read_excel() untuk membaca file excel berikut dengan sheet yang diminta.,1695,1,8560
Pastikan juga bahwa kamu dengan benar menentrikan argumen dari method .read_excel() dan tidak lupa menampilkan 4 baris teratas dari data excel yang telah dibaca.,1695,2,8561
Apakah kamu telah menggunakan pd.read_json(url) untuk membaca file json berdasarkan alamat url yang diberikan? Jangan lupa untuk menapilkan 10 data teratas dari file json yang telah kamu baca.,1698,1,8562
Pastikan kamu telah mengimport pandas sebagai aliasnya dan menuliskan url dengan benar sebagai sebuah string.,1698,2,8563
Pastikan kamu telah menerapakn method .head dan .tail untuk masing-masingnya 3 data teratas dan terbawah.,2143,1,8564
Jangan lupa untuk mengimport pandas sebagai aliasnya dan kemudian membaca file csv yang diinstruksikan.,2143,2,8565
[TODO],387,1,8846
Pastikan bahwa pandas telah kamu import sebagai aliasnya dan kemudian kamu juga telah membaca file tsv sesuai dengan nama file yang diinstruksikan. ,2133,1,8568
Pastikan juga bahwa kamu telah mencetak index dan kolom yang dimiliki oleh dataframe df.,2133,2,8569
Pastikan kamu telah mengimport pandas sebagai aliasnya dan membaca file tsv untuk sejumlah baris yang diinstruksikan.,2135,1,8572
Pastikan index baru yang akan diassign sesuai dengan jumlah baris yang dimiliki oleh dataframe.,2135,2,8573
Ketik sesuai dengan soal.,193,1,8888
"Pastikan untuk kolom indeksnya adalah kolom ""order_date"" dan ""order_id"" yang ditulis secara berurut dan dicasting di dalam sebuah list.",2138,1,8576
Jangan lupa bahwa kamu menggunakan libarary pandas yang diimport sebagai aliasnya. Instruksi meminta hanya delapan data teratas yang akan ditampilkan di console.,2138,2,8577
Masukan seperti yang ada di soal dan mendapatkan nilai max dari kolom pinalty,2786,1,9064
Filter nilai Max kolom pinalty dengan nilai diatas 30000,2786,2,9065
Pastikan kamu telah melakukan slicing langsung dengan menggunakan kolom customer_id sesuai dengan nilai id-nya dan kolom product_id sejumlah 5 id.,2136,1,8584
Jangan lupa untuk mengimport pandas sebagai alias dan membaca file sample_csv.csv.,2136,2,8585
Pastikan kamu telah melakukan set_index terlebih dahulu sesuai dengan urutan kolom yang diinstruksikan dan kemudian menslice berdasarkan kondisi untuk setiap kolom yang disebutkan.,2139,1,8588
"Jangan lupa untuk mengimport pandas sebagai alias, membaca file csv-nya dan dalam menerapkan .loc perhatikan tipe data yang akan digunakan sebagai kondisi untuk setiap kolom.",2139,2,8589
Pastikan kamu telah mengecek tipe datanya dengan menggunakan attribut .dtypes dan kemudian merubah tipe data kolom order_date ke datetime melalui pd.datetime().,2142,1,8590
"Jangan lupa ya bahwa
* isi argumen pada pd.datetime(argumen) adalah content pada kolom yang akan diubah
* kamu sudah mengimport pandas sebagai aliasnya dan membaca data dari file sample_csv.csv",2142,2,8591
Pastikan bahwa kolom quantity harus diubah menjadi kolom bertipe numerik float serta kolom city menjadi kolom bertipe kategori dengan masing-masingnya menggunakan pd.to_numeric dan .astype().,2144,1,8592
"Pastikan untuk tidak melupakan mengimport pandas sebagai aliasnya, menbaca data dan mengecek tipe data basik sebelum dan setelah transformasi.",2144,2,8593
Pastikan kamu telah menerapkan method apply dan map yang masing-masingnya untuk mengubah seluruh isi pada kolom brand menjadi lowercase dan kemudian ambil karakter terakhirnya. Penggunaan anonymous function dengan lambda sangat bermanfaat.,2145,1,8598
"Jangan kamu lupakan untuk mengimport library pandas, membaca data sample_csv.csv, dan mencetak 5 baris teratas kolom brand untuk masing-masing langkah yang telah diinstruksikan.",2145,2,8599
Untuk fungsi iqr kamu dapat membuat return sebagai hasil pengurangan method .quantile(0.75) dan .quantile(0.25) pada  argument series.,2230,1,8675
"Pastikan kamu sudah membaca dataset, membuat fungsi untuk menghitung inter-quartile range, dan mencetak 5 data teratas dari output custom aggregation using dict.",2230,2,8676
"Pastikan kamu telah melakukan proses sesuai dengan yang telah diinstruksikan, 
* memanggil library pandas sebagai aliasnya
* membaca dataset dengan pd.read_csv()
* mencetak 5 baris teratas dan info dari dataframe.",2236,1,8679
"Untuk membaca data dengan pd.read_csv agar secara langsung dikenali sebagai dataframe dengan index berupa time series, keyword argument 
       parse_dates=True, index_col='timestamp'
dapat kamu gunakan.",2236,2,8680
"Pastikan bahwa kamu membaca data secara default (tidak menggunakan keyword argument seperti pada subbab sebelumnya). Setelah itu, kolom dataframe yang memiliki data berformat datetime diubah agar bertipe datetime64 dan kemudian dijadikan index.",2237,1,8683
"Untuk kasus ini dataframe yang telah kamu baca diubah kolom 'timestamp'-nya menjadi datetime64 melalui [nama_dataframe][nama_kolom] = pd.to_datetime([nama_dataframe][nama_kolom])
dan [nama_kolom] tersebut dijadikan sebagai index dari dataframe melalui
[nama_dataframe] = [nama_dataframe].set_index([nama_kolom])",2237,2,8684
"* Bacalah dataset secara default, kemudian ubah ke kolom 'timestamp' agar bertipe datetime64 dan gunakan kolom 'timestamp' sebagai index dari dataframe.
* Pastikan bahwa kamu telah melakukan downsampling dari interval waktu dalam time series dataframe yang awalnya daily menjadi weekly dan quarterly.",2239,1,8689
"* pd.to_datetime dapat kamu gunakan untuk merubah kolom menjadi kolom bertipe datetime64
* method .resample dapat kamu gunakan pada time series dataframe baik untuk downsampling atau upsampling berdasarkan string waktu yang telah ditunjukkan. Aggregasi diperlukan setelah proses resampling yaitu sama halnya setelah proses grouping dengan groupby.",2239,2,8690
"Pastikan bahwa kamu telah
* membaca dataset secara default, kemudian ubah ke kolom 'timestamp' agar bertipe datetime64 dan gunakan kolom 'timestamp' sebagai index dari dataframe.
* melakukan upsampling dari interval waktu dalam time series dataframe yang awalnya daily menjadi hourly dan kemudian terapkan fungsi aggregasi seperti yang diinstruksikan.",2240,1,8693
"* pd.to_datetime dapat kamu gunakan untuk merubah kolom menjadi kolom bertipe datetime64
* method .resample dapat kamu gunakan pada time series dataframe baik untuk downsampling atau upsampling berdasarkan string waktu yang telah ditunjukkan sebagai argumentnya. Aggregasi diperlukan setelah proses resampling yaitu sama halnya setelah proses grouping dengan groupby.",2240,2,8694
"Pastikan bahwa kamu telah
* membaca dataset secara default, kemudian ubah ke kolom 'timestamp' agar bertipe datetime64 dan gunakan kolom 'timestamp' sebagai index dari dataframe.
* melakukan resampling dari interval waktu dalam time series dataframe yang awalnya daily menjadi bimonthly dan kemudian terapkan fungsi aggregasi seperti yang diinstruksikan. Aplikasikan juga method .fillna untuk mengisi data-data hasil resampling berupa NaN.",2241,1,8697
"* pd.to_datetime dapat kamu gunakan untuk merubah kolom menjadi kolom bertipe datetime64
* method .resample dapat kamu gunakan pada time series dataframe baik untuk downsampling atau upsampling berdasarkan string waktu yang telah ditunjukkan sebagai argumentnya dan juga berdasarkan pengali waktu yang disebut dengan frekuensi. Aggregasi diperlukan setelah proses resampling yaitu sama halnya setelah proses grouping dengan groupby. 
Catatan: kamu dapat mengisi datum yang hilang (missing value).",2241,2,8698
"Pastikan kamu telah mengikuti urutan-urutan seperti yang telah dicontohkan pada section Lesson. 
Untuk membuat plot yang diminta, pastikan juga bahwa dataframenya telah diolah sedemikian rupa sehingga dapat menjawab persoalan dalam bentuk visualisasi, sehingga dapat dimengerti interpretasi dari data yang dimiliki.",2242,1,8701
"Pandas telah menyediakan akses untuk plotting langsung berdasarkan method yang bersumber dataframe yang diinstantiate.
       [nama_dataframe].plot(**kwargs)
dengan kwargs merupakan keyword argument yang diperlukan untuk melayout plotting. 

Bisa merujuk nantinya ke https://pandas.pydata.org/pandas-docs/version/0.24/reference/api/pandas.DataFrame.plot.html",2242,2,8702
"Pastikan bahwa kamu telah
* membaca keseluruhan dataset setiap quarternya,
* melakukan pengecekan data dan nama-nama kolom pada keempat dataframe
* menggunakan method concat untuk menggabungkan keempat dataframe jika nama-nama kolom keempat dataframe sama
* mengecek dataframe hasil penggabungan dengan info dan nilai statistik kolom-kolomnya.",2306,1,8703
"Untuk
* membaca data kamu dapat menggunakan pd.read_csv(...)
* mengetahui kolom-kolom yang dimiliki oleh dataframe dilakukan dengan attribut .columns pada dataframe bersangkutan
* menggabungkan beberapa dataframe dengan menggunakan pd.concat(...) dan argumentnya berisi list of dataframe
* mengetahui info dan statistik deskriptif dataframe, kamu dapat menerapkan method .info dan .describe pada dataframe tersebut",2306,2,8704
Pastikan kamu telah membaca isi file text dengan mengunakan .readlines() dan menerapkan perulangan for.,1382,1,8709
"Pastikan 
*) penulisan atau pemanggilan file bertipe txt sudah benar beserta tanda baca, 
*) set argument untuk mode membaca (read) dengan telah dituliskan dengan benar. 
",1382,2,8710
"Pastikan penulisan atau pemanggilan file bertipe txt sudah benar beserta tanda baca, dan set argument untuk mode menuliskan di baris berikutnya (append) telah dituliskan dengan benar.",1384,1,8715
Pastikan konten yang akan ditambahkan ke file hello.txt telah dinyatakan dalam tipe data list of str.,1384,2,8716
Gunakan code sesuai contoh pada Lesson.,474,1,8732
Pastikan semua baris perintah sudah dituliskan serta kamu inspeksi dataset yang telah dibaca apakah berisi missing value atau tidak.,2148,1,8719
Mulailah dengan mengimport pandas sebagai aliasnya dan kemudian bacalah data covid19 tersebut. ,2148,2,8720
"Jangan lupa kamu harus mengimport pandas sebagai alias, file yang akan dibaca, dan mencetak ukuran dataset disetiap langkah seperti yang diinstruksikan.",2150,1,8721
"Pastikan axis untuk membuang kolom adalah 1 dan untuk membuang baris adalah 0, serta bagaimana cara membuangnya yaitu ""all"" seluruh data adalah missing value dan ""any"" jika setidaknya hanya satu saja yang missing value maka buang kolom/barisnya.",2150,2,8722
Pastikan kamu telah mengganti kolom province_state dengan kolom province_state yang sudah diterapkan method .fillna. Isi dari argument fillna adalah string/text yang diinstruksikan.,2152,1,8723
"Jangan lupa untuk mengimport pandas sebagai aliasnya, membaca dataset, mencetak unique value sebelum dan setelah diterapkan method fillna.",2152,2,8724
[TODO],380,1,8847
Tambahkan pasangan aesthetic seperti dijelaskan pada teks pengantar.,195,1,8889
Pastikan kamu mengisi nilai missing value pada kolom active dengan nilai median terlebih dahulu baru kemudian diikuti denga mengisi nya dengan mean. Serta cetaklah nilai mean dan median kolom tersebut sebelum dan setelah diisi missing valuenya.,2151,1,8729
Jangan lupa untuk menggunakan method fillna dengan argumennya adalah nilai median dan mean kolom yang akan diisi nilai missing valuenya.,2151,2,8730
"Gunakan perintah yang sama dengan contoh, gantilah dengan nomor cluster yang diminta oleh soal.",68,1,8934
"Pastikan kamu melakukan proses unstacking default, dengan menspesifikasi level name dan level position secara berurutan seperti yang dideskripsikan.",2220,1,9023
Proses unstacking dapat diterapkan pada dataframe melalui method .unstack(). Jika tidak dispesifikasi keyword argument-nya maka proses unstacking dilakukan secara default. Keyword argument dapat dispesifikasi dengan level berupa string nama kolom atau posisi berupa integer level multiindexnya.,2220,2,9024
"Pastikan bahwa kamu telah
* melakukan pengecekan data yang tidak masuk akal, misal data yang seharusnya positif ada yang bernilai negatif atau ada data yang bertipe string yang tidak seharusnya dalam data-data bernilai numerik. Jika data-data tersebut memenuhi kondisi tersebut maka datanya dibuang.
* merubah tipe data yang belum menjadi tipe data seharusnya seperti tipe data datetime atau int.
* mengecek kembali informasi dan statistik deskriptif dar dataset sehingga dapat diolah lebih lanjut.",2307,1,9066
"Untuk 
* menentukan data yang tidak masuk akal dapat dicek dengan menggunakan method .loc[] dengan menggunakan kondisi yang diberikan.
* membuang data tersebut dapat dilakukan dengan cara yang serupa di atas.
* merubah ke tipe data integer dapat digunakan method .astype('int') pada dataframe
* merubah ke tipe data datetime dapat digunakan pd.datetime(nama_dataframe)
* mengecek informasi dan statistik deskriptif kamu dapat menggunakan method .info() dan .describe()  ",2307,2,9067
