Pengantar Data Sains

~ Tugas I ~


Kontak : \(\downarrow\)
Email
Instagram https://www.instagram.com/fe_nw/
RPubs https://rpubs.com/ferdnw/

Import Data

Berikut menggunakan dataset Jumlah Siswa dan Guru SMA di DKI Jakarta Tahun 2020

maindata = read.csv("C:/Users/PF2TB/Downloads/data-jumlah-siswa-dan-guru-sma-provinsi-dki-jakarta-tahun-2020.csv")
maindata
#Rename columnsnya
names(maindata)=c("Nama_Sekolah", "NPSN", "Jenjang_Pendidikan", "Status", "Jumlah_Siswa", "Jumlah_Guru", "Kecamatan", "Kotamadya")
maindata

Organize Data

Filter

library(dplyr)
negeri = filter(maindata, Status == "Negeri")
negeri  #Show  SMA Negeri di Jakarta
westjkt = filter(maindata, Kotamadya == "Kota Jakarta Barat")
westjkt # Menampilkan SMA di West Jakarta

Select

loc= select(negeri, Nama_Sekolah, NPSN, Status, Kecamatan, Kotamadya)
loc

Arranged

sorted_JS = arrange(maindata, by = desc(Jumlah_Siswa))
sorted_JS # Mengurutkan Sekolah di Jakarta berdasarkan Jumlah Siswa

Slice

top10 = slice(sorted_JS, 1:10)
top10 # Show 10 SMA dengan Jumlah Siswa Terbanyak

Visualisasi

library(ggplot2)
westjkt = filter(maindata, Kotamadya == "Kota Jakarta Barat")
eastjkt = filter(maindata, Kotamadya == "Kota Jakarta Timur")
centjkt = filter(maindata, Kotamadya == "Kota Jakarta Pusat")
norjkt = filter(maindata, Kotamadya == "Kota Jakarta Utara")
sthjkt = filter(maindata, Kotamadya == "Kota Jakarta Selatan")
kepser = filter(maindata, Kotamadya == "Kab. Kepulauan Seribu")

students= data.frame("jkt" = c("Jakarta Barat", "Jakarta Timur", "Jakarta Pusat", "Jakarta Utara", "Jakarta Selatan", "Kepulauan Seribu"), 
                     "Sums" = c(sum(westjkt$Jumlah_Siswa), sum(eastjkt$Jumlah_Siswa), sum(centjkt$Jumlah_Siswa), sum(norjkt$Jumlah_Siswa),sum(sthjkt$Jumlah_Siswa), sum(kepser$Jumlah_Siswa)))

ggplot(students, aes(x=reorder(jkt, Sums), y = Sums)) +
  geom_bar(stat='identity', fill = rainbow(6)) +
            theme_minimal() +
             geom_text(aes(label = Sums ), vjust= -0.25 , color = "black", size=3.5) + 
             labs(title = "Jumlah Peserta Didik SMA di Jakarta tahun 2020", x = 'Kotamadya', y = "Jumlah Peserta Didik")

westjkt = filter(maindata, Kotamadya == "Kota Jakarta Barat")
eastjkt = filter(maindata, Kotamadya == "Kota Jakarta Timur")
centjkt = filter(maindata, Kotamadya == "Kota Jakarta Pusat")
norjkt = filter(maindata, Kotamadya == "Kota Jakarta Utara")
sthjkt = filter(maindata, Kotamadya == "Kota Jakarta Selatan")
kepser = filter(maindata, Kotamadya == "Kab. Kepulauan Seribu")

schools= data.frame("jkt" = c("Jakarta Barat", "Jakarta Timur", "Jakarta Pusat", "Jakarta Utara", "Jakarta Selatan", "Kepulauan Seribu"), 
                     "Sumschool" = c(nrow(westjkt), nrow(eastjkt), nrow(centjkt), nrow(norjkt),nrow(sthjkt), nrow(kepser)))

ggplot(schools, aes(x=reorder(jkt, Sumschool), y = Sumschool)) +
  geom_bar(stat='identity', fill = rainbow(6)) +
            theme_minimal() +
             geom_text(aes(label = Sumschool ), vjust= -0.25 , color = "black", size=3.5) + 
             labs(title = "Jumlah Sekolah SMA di Jakarta ", x = 'Kotamadya', y = "Jumlah SMA")

library(ggplot2)
library(dplyr)
library(scales)

#RIngkasan dataset
plotdata = maindata%>%
  group_by(Kotamadya, Status) %>%
  dplyr::summarize (n= n()) %>%
  mutate(pct = n/sum(n),
         lbl = scales::percent(pct))

ggplot(plotdata, aes(x=factor(Kotamadya),
                    y=pct, 
                    fill = factor(Status)))+
  geom_bar(stat="identity", position="fill")+
  scale_y_continuous(breaks = seq(0,1,0.2), label = percent)+
  geom_text(aes(label=lbl), size= 3, position = position_stack(vjust = 0.5)) +
  scale_fill_brewer (palette="Set2")+
  theme_minimal()+
  labs(y='Percent', fill = "Status", 
       x= "Kotamadya", title = "Persentase Status SMA di Jakarta")+ 
  theme_minimal() + theme(axis.text.x = element_text(angle = 30, hjust=1))

DQotLS0NCnRpdGxlOiAiUGVuZ2FudGFyIERhdGEgU2FpbnMiDQpzdWJ0aXRsZTogIn4gVHVnYXMgSSB+Ig0KYXV0aG9yOiAiRmVyZGluYW5kIE5hdGhhbmllbCBXaWRqYXlhICgyMDIxNDkyMDAwNikiDQpkYXRlOiAgImByIGZvcm1hdChTeXMuRGF0ZSgpLCAnJUIgJWQsICVZJylgIg0Kb3V0cHV0Og0KICBybWRmb3JtYXRzOjpyb2JvYm9vazogICAjIGh0dHBzOi8vZ2l0aHViLmNvbS9qdWJhL3JtZGZvcm1hdHMNCiAgICBzZWxmX2NvbnRhaW5lZDogdHJ1ZQ0KICAgIHRodW1ibmFpbHM6IHRydWUNCiAgICBsaWdodGJveDogdHJ1ZQ0KICAgIGdhbGxlcnk6IHRydWUNCiAgICBsaWJfZGlyOiBsaWJzDQogICAgZGZfcHJpbnQ6ICJwYWdlZCINCiAgICBjb2RlX2ZvbGRpbmc6ICJzaG93Ig0KICAgIGNvZGVfZG93bmxvYWQ6IHllcw0KICAgIGNzczogInN0eWxlLmNzcyINCg0KLS0tDQoNCmBgYHtyIGluY2x1ZGU9RkFMU0V9DQprbml0cjo6b3B0c19jaHVuayRzZXQoY2xhc3Muc291cmNlID0gIm5vY29weSIsDQogICAgICAgICAgICAgICAgICAgICAgY2xhc3Mub3V0cHV0ID0gIm5vY29weSIsDQogICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZSA9IEYsDQogICAgICAgICAgICAgICAgICAgICAgd2FybmluZyA9IEYpDQoNCmxpYnJhcnkocmV0aWN1bGF0ZSkNCmxpYnJhcnkoUmNwcCkNCg0KYGBgDQoNCjxicj4NCg0KPGltZyBzdHlsZT0iZmxvYXQ6IHJpZ2h0OyBtYXJnaW46IC01MHB4IDUwcHggMHB4IDUwcHg7IHdpZHRoOjMwJSIgc3JjPSJmb3RvLmpwZyIvPiANCg0KfA0KOi0tLS0gfDotLS0tDQoqKktvbnRhayoqfCAqKjogJFxkb3duYXJyb3ckKioNCkVtYWlsfCBmZXJkaW5hbmQud2lkamF5YUBzdHVkZW50Lm1hdGFuYXVuaXZlcnNpdHkuYWMuaWQNCkluc3RhZ3JhbSB8IGh0dHBzOi8vd3d3Lmluc3RhZ3JhbS5jb20vZmVfbncvIA0KUlB1YnMgIHwgaHR0cHM6Ly9ycHVicy5jb20vZmVyZG53LyANCg0KDQoNCiMgSW1wb3J0IERhdGENCg0KIEJlcmlrdXQgbWVuZ2d1bmFrYW4gZGF0YXNldCBKdW1sYWggU2lzd2EgZGFuIEd1cnUgIFNNQSBkaSBES0kgSmFrYXJ0YSBUYWh1biAyMDIwDQogDQpgYGB7cn0NCg0KbWFpbmRhdGEgPSByZWFkLmNzdigiQzovVXNlcnMvUEYyVEIvRG93bmxvYWRzL2RhdGEtanVtbGFoLXNpc3dhLWRhbi1ndXJ1LXNtYS1wcm92aW5zaS1ka2ktamFrYXJ0YS10YWh1bi0yMDIwLmNzdiIpDQptYWluZGF0YQ0KDQpgYGANCmBgYHtyfQ0KI1JlbmFtZSBjb2x1bW5zbnlhDQpuYW1lcyhtYWluZGF0YSk9YygiTmFtYV9TZWtvbGFoIiwgIk5QU04iLCAiSmVuamFuZ19QZW5kaWRpa2FuIiwgIlN0YXR1cyIsICJKdW1sYWhfU2lzd2EiLCAiSnVtbGFoX0d1cnUiLCAiS2VjYW1hdGFuIiwgIktvdGFtYWR5YSIpDQptYWluZGF0YQ0KYGBgDQoNCg0KIyBPcmdhbml6ZSBEYXRhey50YWJzZXQgLnRhYnNldC1waWxsc30NCg0KDQojIyBGaWx0ZXINCg0KDQpgYGB7cn0NCmxpYnJhcnkoZHBseXIpDQpuZWdlcmkgPSBmaWx0ZXIobWFpbmRhdGEsIFN0YXR1cyA9PSAiTmVnZXJpIikNCm5lZ2VyaSAgI1Nob3cgIFNNQSBOZWdlcmkgZGkgSmFrYXJ0YQ0KYGBgDQoNCmBgYHtyfQ0Kd2VzdGprdCA9IGZpbHRlcihtYWluZGF0YSwgS290YW1hZHlhID09ICJLb3RhIEpha2FydGEgQmFyYXQiKQ0Kd2VzdGprdCAjIE1lbmFtcGlsa2FuIFNNQSBkaSBXZXN0IEpha2FydGENCmBgYA0KIyMgU2VsZWN0IA0KYGBge3J9DQpsb2M9IHNlbGVjdChuZWdlcmksIE5hbWFfU2Vrb2xhaCwgTlBTTiwgU3RhdHVzLCBLZWNhbWF0YW4sIEtvdGFtYWR5YSkNCmxvYw0KYGBgDQoNCiMjIEFycmFuZ2VkDQoNCmBgYHtyfQ0Kc29ydGVkX0pTID0gYXJyYW5nZShtYWluZGF0YSwgYnkgPSBkZXNjKEp1bWxhaF9TaXN3YSkpDQpzb3J0ZWRfSlMgIyBNZW5ndXJ1dGthbiBTZWtvbGFoIGRpIEpha2FydGEgYmVyZGFzYXJrYW4gSnVtbGFoIFNpc3dhDQpgYGANCiMjIFNsaWNlDQoNCmBgYHtyfQ0KdG9wMTAgPSBzbGljZShzb3J0ZWRfSlMsIDE6MTApDQp0b3AxMCAjIFNob3cgMTAgU01BIGRlbmdhbiBKdW1sYWggU2lzd2EgVGVyYmFueWFrDQpgYGANCg0KIyBWaXN1YWxpc2FzaQ0KDQpgYGB7cn0gDQpsaWJyYXJ5KGdncGxvdDIpDQp3ZXN0amt0ID0gZmlsdGVyKG1haW5kYXRhLCBLb3RhbWFkeWEgPT0gIktvdGEgSmFrYXJ0YSBCYXJhdCIpDQplYXN0amt0ID0gZmlsdGVyKG1haW5kYXRhLCBLb3RhbWFkeWEgPT0gIktvdGEgSmFrYXJ0YSBUaW11ciIpDQpjZW50amt0ID0gZmlsdGVyKG1haW5kYXRhLCBLb3RhbWFkeWEgPT0gIktvdGEgSmFrYXJ0YSBQdXNhdCIpDQpub3Jqa3QgPSBmaWx0ZXIobWFpbmRhdGEsIEtvdGFtYWR5YSA9PSAiS290YSBKYWthcnRhIFV0YXJhIikNCnN0aGprdCA9IGZpbHRlcihtYWluZGF0YSwgS290YW1hZHlhID09ICJLb3RhIEpha2FydGEgU2VsYXRhbiIpDQprZXBzZXIgPSBmaWx0ZXIobWFpbmRhdGEsIEtvdGFtYWR5YSA9PSAiS2FiLiBLZXB1bGF1YW4gU2VyaWJ1IikNCg0Kc3R1ZGVudHM9IGRhdGEuZnJhbWUoImprdCIgPSBjKCJKYWthcnRhIEJhcmF0IiwgIkpha2FydGEgVGltdXIiLCAiSmFrYXJ0YSBQdXNhdCIsICJKYWthcnRhIFV0YXJhIiwgIkpha2FydGEgU2VsYXRhbiIsICJLZXB1bGF1YW4gU2VyaWJ1IiksIA0KICAgICAgICAgICAgICAgICAgICAgIlN1bXMiID0gYyhzdW0od2VzdGprdCRKdW1sYWhfU2lzd2EpLCBzdW0oZWFzdGprdCRKdW1sYWhfU2lzd2EpLCBzdW0oY2VudGprdCRKdW1sYWhfU2lzd2EpLCBzdW0obm9yamt0JEp1bWxhaF9TaXN3YSksc3VtKHN0aGprdCRKdW1sYWhfU2lzd2EpLCBzdW0oa2Vwc2VyJEp1bWxhaF9TaXN3YSkpKQ0KDQpnZ3Bsb3Qoc3R1ZGVudHMsIGFlcyh4PXJlb3JkZXIoamt0LCBTdW1zKSwgeSA9IFN1bXMpKSArDQogIGdlb21fYmFyKHN0YXQ9J2lkZW50aXR5JywgZmlsbCA9IHJhaW5ib3coNikpICsNCiAgICAgICAgICAgIHRoZW1lX21pbmltYWwoKSArDQogICAgICAgICAgICAgZ2VvbV90ZXh0KGFlcyhsYWJlbCA9IFN1bXMgKSwgdmp1c3Q9IC0wLjI1ICwgY29sb3IgPSAiYmxhY2siLCBzaXplPTMuNSkgKyANCiAgICAgICAgICAgICBsYWJzKHRpdGxlID0gIkp1bWxhaCBQZXNlcnRhIERpZGlrIFNNQSBkaSBKYWthcnRhIHRhaHVuIDIwMjAiLCB4ID0gJ0tvdGFtYWR5YScsIHkgPSAiSnVtbGFoIFBlc2VydGEgRGlkaWsiKQ0KYGBgDQpgYGB7cn0NCndlc3Rqa3QgPSBmaWx0ZXIobWFpbmRhdGEsIEtvdGFtYWR5YSA9PSAiS290YSBKYWthcnRhIEJhcmF0IikNCmVhc3Rqa3QgPSBmaWx0ZXIobWFpbmRhdGEsIEtvdGFtYWR5YSA9PSAiS290YSBKYWthcnRhIFRpbXVyIikNCmNlbnRqa3QgPSBmaWx0ZXIobWFpbmRhdGEsIEtvdGFtYWR5YSA9PSAiS290YSBKYWthcnRhIFB1c2F0IikNCm5vcmprdCA9IGZpbHRlcihtYWluZGF0YSwgS290YW1hZHlhID09ICJLb3RhIEpha2FydGEgVXRhcmEiKQ0Kc3Roamt0ID0gZmlsdGVyKG1haW5kYXRhLCBLb3RhbWFkeWEgPT0gIktvdGEgSmFrYXJ0YSBTZWxhdGFuIikNCmtlcHNlciA9IGZpbHRlcihtYWluZGF0YSwgS290YW1hZHlhID09ICJLYWIuIEtlcHVsYXVhbiBTZXJpYnUiKQ0KDQpzY2hvb2xzPSBkYXRhLmZyYW1lKCJqa3QiID0gYygiSmFrYXJ0YSBCYXJhdCIsICJKYWthcnRhIFRpbXVyIiwgIkpha2FydGEgUHVzYXQiLCAiSmFrYXJ0YSBVdGFyYSIsICJKYWthcnRhIFNlbGF0YW4iLCAiS2VwdWxhdWFuIFNlcmlidSIpLCANCiAgICAgICAgICAgICAgICAgICAgICJTdW1zY2hvb2wiID0gYyhucm93KHdlc3Rqa3QpLCBucm93KGVhc3Rqa3QpLCBucm93KGNlbnRqa3QpLCBucm93KG5vcmprdCksbnJvdyhzdGhqa3QpLCBucm93KGtlcHNlcikpKQ0KDQpnZ3Bsb3Qoc2Nob29scywgYWVzKHg9cmVvcmRlcihqa3QsIFN1bXNjaG9vbCksIHkgPSBTdW1zY2hvb2wpKSArDQogIGdlb21fYmFyKHN0YXQ9J2lkZW50aXR5JywgZmlsbCA9IHJhaW5ib3coNikpICsNCiAgICAgICAgICAgIHRoZW1lX21pbmltYWwoKSArDQogICAgICAgICAgICAgZ2VvbV90ZXh0KGFlcyhsYWJlbCA9IFN1bXNjaG9vbCApLCB2anVzdD0gLTAuMjUgLCBjb2xvciA9ICJibGFjayIsIHNpemU9My41KSArIA0KICAgICAgICAgICAgIGxhYnModGl0bGUgPSAiSnVtbGFoIFNla29sYWggU01BIGRpIEpha2FydGEgIiwgeCA9ICdLb3RhbWFkeWEnLCB5ID0gIkp1bWxhaCBTTUEiKQ0KYGBgDQoNCmBgYHtyfQ0KbGlicmFyeShnZ3Bsb3QyKQ0KbGlicmFyeShkcGx5cikNCmxpYnJhcnkoc2NhbGVzKQ0KDQojUkluZ2thc2FuIGRhdGFzZXQNCnBsb3RkYXRhID0gbWFpbmRhdGElPiUNCiAgZ3JvdXBfYnkoS290YW1hZHlhLCBTdGF0dXMpICU+JQ0KICBkcGx5cjo6c3VtbWFyaXplIChuPSBuKCkpICU+JQ0KICBtdXRhdGUocGN0ID0gbi9zdW0obiksDQogICAgICAgICBsYmwgPSBzY2FsZXM6OnBlcmNlbnQocGN0KSkNCg0KZ2dwbG90KHBsb3RkYXRhLCBhZXMoeD1mYWN0b3IoS290YW1hZHlhKSwNCiAgICAgICAgICAgICAgICAgICAgeT1wY3QsIA0KICAgICAgICAgICAgICAgICAgICBmaWxsID0gZmFjdG9yKFN0YXR1cykpKSsNCiAgZ2VvbV9iYXIoc3RhdD0iaWRlbnRpdHkiLCBwb3NpdGlvbj0iZmlsbCIpKw0KICBzY2FsZV95X2NvbnRpbnVvdXMoYnJlYWtzID0gc2VxKDAsMSwwLjIpLCBsYWJlbCA9IHBlcmNlbnQpKw0KICBnZW9tX3RleHQoYWVzKGxhYmVsPWxibCksIHNpemU9IDMsIHBvc2l0aW9uID0gcG9zaXRpb25fc3RhY2sodmp1c3QgPSAwLjUpKSArDQogIHNjYWxlX2ZpbGxfYnJld2VyIChwYWxldHRlPSJTZXQyIikrDQogIHRoZW1lX21pbmltYWwoKSsNCiAgbGFicyh5PSdQZXJjZW50JywgZmlsbCA9ICJTdGF0dXMiLCANCiAgICAgICB4PSAiS290YW1hZHlhIiwgdGl0bGUgPSAiUGVyc2VudGFzZSBTdGF0dXMgU01BIGRpIEpha2FydGEiKSsgDQogIHRoZW1lX21pbmltYWwoKSArIHRoZW1lKGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KGFuZ2xlID0gMzAsIGhqdXN0PTEpKQ0KDQpgYGANCg0KIyBSZWZyZW5zaSANCjEuIGh0dHBzOi8vZHNjaWVuY2VsYWJzLmdpdGh1Yi5pby9pbnRyb2R1Y3Rpb24tdG8tZGF0YXNjaWVuY2UNCjIuIGh0dHBzOi8vZGF0YS5qYWthcnRhLmdvLmlkL2RhdGFzZXQvZGF0YS1qdW1sYWgtc2lzd2EtZGFuLWd1cnUtc21hLXByb3ZpbnNpLWRraS1qYWthcnRhL3Jlc291cmNlL2RjNDgwYWE3LTQ5ZDgtNDJhYi1hZWRhLTJkNGVlYmZkMDJkNA==