Algoritma & Struktur Data
~ Ujian Tengah Semester ~
| Kontak | : \(\downarrow\) |
| ferdinand.widjaya@student.matanauniversity.ac.id | |
| https://www.instagram.com/fe_nw/ | |
| RPubs | https://rpubs.com/ferdnw/ |
Kasus 1
Asumsikan Anda telah mengumpulkan beberapa kumpulan data dari perusahaan ABC Property seperti yang dapat kita lihat pada tabel berikut:
Id <- (1:10000)
Marketing_Name <- rep(c("Angel","Sherly","Vanessa","Irene","Julian",
"Jeffry","Nikita","Kefas","Siana","Lala",
"Fallen","Ardifo","Kevin","Juen","Jerrel",
"Imelda","Widi","Theodora","Elvani","Jonathan",
"Sofia","Abraham","Siti","Niko","Sefli",
"Bene", "Diana", "Pupe", "Andi", "Tatha",
"Endri", "Monika", "Hans", "Debora","Hanifa",
"James", "Jihan", "Friska","Ardiwan", "Bakti",
"Anthon","Amry", "Wiwik", "Bastian", "Budi",
"Leo","Simon","Matius","Arry", "Eliando"), 200)
Work_Exp <- rep(c(1.3,2.4,2.5,3.6,3.7,4.7,5.7,6.7,7.7,7.3,
5.3,5.3,10,9.3,3.3,3.3,3.4,3.4,3.5,5.6,
3.5,4.6,4.6,5.7,6.2,4.4,6.4,6.4,3.5,7.5,
4.6,3.7,4.7,4.3,5.2,6.3,7.4,2.4,3.4,8.2,
6.4,7.2,1.5,7.5,10,4.5,6.5,7.2,7.1,7.6),200)
City <- sample(c("Jakarta","Bogor","Depok","Tengerang","Bekasi"),10000, replace = T)
Cluster <- sample(c("Victoria","Palmyra","Winona","Tiara", "Narada",
"Peronia","Lavesh","Alindra","Sweethome", "Asera",
"Teradamai","Albasia", "Adara","Neon","Arana",
"Asoka", "Primadona", "Mutiara","Permata","Alamanda" ), 10000, replace=T)
Price <- sample(c(7000:15000),10000, replace = T)
Date_Sales <- sample(seq(as.Date("2018/01/01"), by = "day", length.out = 1000),10000, replace = T)
Advertisement <- sample(c(1:20), 10000, replace = T)
Data <- data.frame(Id,
Marketing_Name,
Work_Exp,
City,
Cluster,
Price,
Date_Sales,
Advertisement)
library(DT)
datatable(Data)Soal 1
Kategorikan variabel Harga pada dataset di atas menjadi tiga kelompok sebagai berikut:
- \(\text{High} > 12000\)
- \(10000 \le \text{Medium} \le 12000\)
- \(\text{Low} < 10000\)
Tetapkan ke dalam variabel baru yang disebut Kelas dengan menggunakan fungsi kontrol If, else if, dan else.
R
# tuliskan koding R kalian disini
x= Data$Price
y = ifelse((x>12000),print('High'), ifelse((x>=10000 & x<=12000), print('Medium'), print('Low')))## [1] "High"
## [1] "Medium"
## [1] "Low"
Data$Classes = y
datatable(Data)Soal 2
Kategorikan variabel Harga pada dataset di atas menjadi enam kelompok sebagai berikut:
- Booking_fee nya 5 % jika \(\text{Price} < 8000\)
- Booking_fee nya 6 % jika \(8000 \le \text{Price} < 9000\)
- Booking_fee nya 7 % jika \(9000 \le \text{Price} < 10000\)
- Booking_fee nya 8 % jika \(10000 \le \text{Price} < 11000\)
- Booking_fee nya 9 % jika \(11000 \le \text{Price} < 13000\)
- Booking_fee nya 10 % jika \(13000 \le \text{Price} \le 15000\)
Tetapkan ke dalam variabel baru yang disebut Booking_fee dengan menggunakan fungsi kontrol If, else if, dan else.
R
k = Data$Price
l = ifelse((k<8000), 5/100*Data$Price, ifelse((k>=8000 & k<9000),6/100*Data$Price, ifelse((k>=9000 & k<10000), 7/100*Data$Price ,ifelse((k>= 10000 & k<11000), 8/100*Data$Price, ifelse ((k>=11000 & k<13000), 9/100*Data$Price,1/10*Data$Price))) ))
Data$BookingFee = l
DataSoal 3
Menurut kumpulan data akhir yang telah Anda buat pada soal no 2, saya berasumsi bahwa Anda telah bekerja sebagai pemasaran di perusahaan ABC Property, bagaimana Anda dapat mengumpulkan semua informasi tentang penjualan Anda dengan menggunakan pernyataan for.
R
library(DT)
z=for(x in "Irene" ){print(subset(Data,subset=(Marketing_Name== x)))}## Id Marketing_Name Work_Exp City Cluster Price Date_Sales
## 4 4 Irene 3.6 Jakarta Adara 9188 2018-10-07
## 54 54 Irene 3.6 Depok Peronia 10411 2019-09-21
## 104 104 Irene 3.6 Bekasi Arana 14044 2019-01-20
## 154 154 Irene 3.6 Bekasi Alamanda 11762 2019-12-08
## 204 204 Irene 3.6 Depok Asoka 13827 2018-06-12
## 254 254 Irene 3.6 Jakarta Mutiara 13603 2019-04-24
## 304 304 Irene 3.6 Bekasi Teradamai 9074 2018-01-29
## 354 354 Irene 3.6 Bekasi Asoka 7163 2020-02-02
## 404 404 Irene 3.6 Bekasi Asera 13816 2018-07-11
## 454 454 Irene 3.6 Bogor Teradamai 12918 2019-09-07
## 504 504 Irene 3.6 Jakarta Narada 8365 2020-09-11
## 554 554 Irene 3.6 Tengerang Teradamai 14902 2018-09-25
## 604 604 Irene 3.6 Depok Arana 12190 2018-04-24
## 654 654 Irene 3.6 Bogor Adara 9155 2018-06-14
## 704 704 Irene 3.6 Bekasi Albasia 11558 2019-03-26
## 754 754 Irene 3.6 Jakarta Narada 12181 2019-12-13
## 804 804 Irene 3.6 Jakarta Arana 7203 2018-07-20
## 854 854 Irene 3.6 Bogor Asoka 10741 2020-07-23
## 904 904 Irene 3.6 Bogor Sweethome 7678 2018-06-22
## 954 954 Irene 3.6 Depok Winona 13314 2018-03-02
## 1004 1004 Irene 3.6 Tengerang Albasia 12225 2018-03-28
## 1054 1054 Irene 3.6 Tengerang Albasia 11273 2019-09-01
## 1104 1104 Irene 3.6 Tengerang Permata 14579 2019-01-25
## 1154 1154 Irene 3.6 Tengerang Adara 13782 2020-06-02
## 1204 1204 Irene 3.6 Tengerang Lavesh 11476 2018-08-01
## 1254 1254 Irene 3.6 Bogor Adara 11054 2018-08-26
## 1304 1304 Irene 3.6 Depok Albasia 11651 2020-04-05
## 1354 1354 Irene 3.6 Bogor Asoka 10230 2018-04-14
## 1404 1404 Irene 3.6 Jakarta Primadona 11482 2018-03-14
## 1454 1454 Irene 3.6 Bogor Permata 7890 2019-12-10
## 1504 1504 Irene 3.6 Jakarta Adara 13705 2019-07-22
## 1554 1554 Irene 3.6 Depok Peronia 7233 2020-05-06
## 1604 1604 Irene 3.6 Tengerang Tiara 13849 2020-06-08
## 1654 1654 Irene 3.6 Depok Permata 11249 2018-07-25
## 1704 1704 Irene 3.6 Tengerang Winona 14119 2019-08-10
## 1754 1754 Irene 3.6 Jakarta Tiara 11038 2018-04-29
## 1804 1804 Irene 3.6 Bogor Sweethome 12470 2018-09-09
## 1854 1854 Irene 3.6 Jakarta Arana 13848 2019-09-08
## 1904 1904 Irene 3.6 Bogor Tiara 14019 2018-11-21
## 1954 1954 Irene 3.6 Depok Neon 14537 2020-01-22
## 2004 2004 Irene 3.6 Tengerang Asera 12382 2020-03-13
## 2054 2054 Irene 3.6 Depok Albasia 14826 2019-11-15
## 2104 2104 Irene 3.6 Tengerang Winona 9905 2018-04-01
## 2154 2154 Irene 3.6 Jakarta Neon 8521 2020-08-23
## 2204 2204 Irene 3.6 Bekasi Primadona 12178 2018-04-26
## 2254 2254 Irene 3.6 Bekasi Peronia 10396 2018-06-30
## 2304 2304 Irene 3.6 Jakarta Asoka 10373 2018-02-21
## 2354 2354 Irene 3.6 Tengerang Palmyra 13481 2018-12-19
## 2404 2404 Irene 3.6 Bekasi Arana 9404 2020-02-24
## 2454 2454 Irene 3.6 Tengerang Mutiara 13956 2018-10-21
## 2504 2504 Irene 3.6 Depok Victoria 12189 2020-04-08
## 2554 2554 Irene 3.6 Depok Teradamai 12372 2018-09-11
## 2604 2604 Irene 3.6 Tengerang Neon 8145 2018-03-15
## 2654 2654 Irene 3.6 Depok Permata 10473 2019-02-23
## 2704 2704 Irene 3.6 Tengerang Alindra 7889 2018-02-27
## 2754 2754 Irene 3.6 Bekasi Adara 13949 2019-07-03
## 2804 2804 Irene 3.6 Depok Mutiara 12752 2018-05-22
## 2854 2854 Irene 3.6 Jakarta Lavesh 13272 2019-12-19
## 2904 2904 Irene 3.6 Depok Permata 8643 2019-01-06
## 2954 2954 Irene 3.6 Bogor Palmyra 14491 2018-03-20
## 3004 3004 Irene 3.6 Bogor Victoria 9148 2018-03-06
## 3054 3054 Irene 3.6 Depok Alindra 10143 2019-10-22
## 3104 3104 Irene 3.6 Bekasi Albasia 11148 2019-01-08
## 3154 3154 Irene 3.6 Jakarta Albasia 7394 2019-07-08
## 3204 3204 Irene 3.6 Depok Adara 9878 2019-04-13
## 3254 3254 Irene 3.6 Tengerang Permata 14711 2018-02-25
## 3304 3304 Irene 3.6 Jakarta Primadona 11424 2020-04-01
## 3354 3354 Irene 3.6 Bekasi Permata 11749 2020-09-11
## 3404 3404 Irene 3.6 Depok Palmyra 7344 2018-02-04
## 3454 3454 Irene 3.6 Jakarta Winona 11294 2018-07-06
## 3504 3504 Irene 3.6 Tengerang Alindra 11284 2020-05-08
## 3554 3554 Irene 3.6 Tengerang Albasia 13889 2019-04-22
## 3604 3604 Irene 3.6 Bogor Mutiara 11393 2020-04-21
## 3654 3654 Irene 3.6 Bogor Sweethome 9716 2020-02-19
## 3704 3704 Irene 3.6 Jakarta Asoka 13360 2019-08-20
## 3754 3754 Irene 3.6 Tengerang Adara 14261 2019-09-06
## 3804 3804 Irene 3.6 Bekasi Narada 12999 2019-05-22
## 3854 3854 Irene 3.6 Bekasi Winona 12390 2018-09-14
## 3904 3904 Irene 3.6 Bogor Peronia 9484 2019-03-25
## 3954 3954 Irene 3.6 Jakarta Arana 13274 2020-05-19
## 4004 4004 Irene 3.6 Depok Peronia 12849 2019-12-17
## 4054 4054 Irene 3.6 Depok Tiara 12054 2020-09-26
## 4104 4104 Irene 3.6 Tengerang Permata 8261 2018-08-28
## 4154 4154 Irene 3.6 Bekasi Asoka 14057 2018-09-08
## 4204 4204 Irene 3.6 Depok Permata 8610 2020-03-14
## 4254 4254 Irene 3.6 Bogor Asoka 13041 2018-08-01
## 4304 4304 Irene 3.6 Depok Adara 10352 2020-09-08
## 4354 4354 Irene 3.6 Depok Primadona 11541 2019-01-09
## 4404 4404 Irene 3.6 Bekasi Teradamai 9997 2018-03-29
## 4454 4454 Irene 3.6 Jakarta Winona 10109 2019-08-30
## 4504 4504 Irene 3.6 Jakarta Albasia 14703 2019-08-27
## 4554 4554 Irene 3.6 Bekasi Primadona 10562 2018-09-07
## 4604 4604 Irene 3.6 Depok Teradamai 9830 2020-08-04
## 4654 4654 Irene 3.6 Bogor Winona 9425 2019-10-23
## 4704 4704 Irene 3.6 Jakarta Palmyra 11036 2020-03-30
## 4754 4754 Irene 3.6 Bogor Victoria 13339 2018-03-22
## 4804 4804 Irene 3.6 Bogor Neon 8945 2018-11-18
## 4854 4854 Irene 3.6 Bekasi Primadona 8265 2019-01-26
## 4904 4904 Irene 3.6 Jakarta Adara 14740 2018-09-07
## 4954 4954 Irene 3.6 Depok Neon 10775 2020-07-12
## 5004 5004 Irene 3.6 Tengerang Primadona 11235 2018-03-24
## 5054 5054 Irene 3.6 Bekasi Victoria 11085 2019-05-30
## 5104 5104 Irene 3.6 Tengerang Narada 8294 2019-01-04
## 5154 5154 Irene 3.6 Depok Victoria 7033 2019-03-25
## 5204 5204 Irene 3.6 Bekasi Palmyra 8582 2018-09-09
## 5254 5254 Irene 3.6 Tengerang Asoka 10734 2018-06-21
## 5304 5304 Irene 3.6 Bekasi Lavesh 8363 2018-11-18
## 5354 5354 Irene 3.6 Depok Tiara 14456 2018-09-19
## 5404 5404 Irene 3.6 Bogor Permata 7286 2018-12-19
## 5454 5454 Irene 3.6 Jakarta Tiara 9500 2019-03-07
## 5504 5504 Irene 3.6 Bogor Victoria 14113 2019-06-12
## 5554 5554 Irene 3.6 Tengerang Permata 9847 2019-09-02
## 5604 5604 Irene 3.6 Jakarta Winona 11138 2019-06-13
## 5654 5654 Irene 3.6 Bogor Teradamai 11394 2019-06-27
## 5704 5704 Irene 3.6 Depok Victoria 11451 2019-03-08
## 5754 5754 Irene 3.6 Jakarta Peronia 10013 2020-09-19
## 5804 5804 Irene 3.6 Bogor Albasia 8668 2020-06-05
## 5854 5854 Irene 3.6 Jakarta Albasia 14492 2018-04-17
## 5904 5904 Irene 3.6 Depok Winona 8306 2018-05-10
## 5954 5954 Irene 3.6 Depok Victoria 11708 2020-05-12
## 6004 6004 Irene 3.6 Jakarta Peronia 10149 2019-11-11
## 6054 6054 Irene 3.6 Depok Victoria 12246 2019-01-09
## 6104 6104 Irene 3.6 Tengerang Winona 10838 2020-04-13
## 6154 6154 Irene 3.6 Bogor Victoria 13740 2019-07-20
## 6204 6204 Irene 3.6 Bogor Sweethome 14399 2018-09-04
## 6254 6254 Irene 3.6 Jakarta Sweethome 8862 2019-04-07
## 6304 6304 Irene 3.6 Jakarta Lavesh 12395 2020-01-22
## 6354 6354 Irene 3.6 Jakarta Alindra 10454 2018-05-28
## 6404 6404 Irene 3.6 Bogor Tiara 11398 2018-03-17
## 6454 6454 Irene 3.6 Jakarta Peronia 9325 2020-01-13
## 6504 6504 Irene 3.6 Bogor Permata 11853 2018-11-18
## 6554 6554 Irene 3.6 Jakarta Winona 14758 2018-02-05
## 6604 6604 Irene 3.6 Bogor Alamanda 13859 2018-07-03
## 6654 6654 Irene 3.6 Depok Albasia 12744 2020-02-05
## 6704 6704 Irene 3.6 Bogor Mutiara 14902 2020-08-15
## 6754 6754 Irene 3.6 Bogor Alindra 10253 2018-01-18
## 6804 6804 Irene 3.6 Jakarta Sweethome 7333 2019-09-26
## 6854 6854 Irene 3.6 Depok Asera 9223 2018-02-19
## 6904 6904 Irene 3.6 Tengerang Arana 13158 2020-02-13
## 6954 6954 Irene 3.6 Jakarta Palmyra 11973 2018-07-28
## 7004 7004 Irene 3.6 Jakarta Winona 13364 2018-05-03
## 7054 7054 Irene 3.6 Tengerang Neon 8781 2019-12-06
## 7104 7104 Irene 3.6 Depok Albasia 14767 2018-01-10
## 7154 7154 Irene 3.6 Bogor Albasia 13621 2019-12-13
## 7204 7204 Irene 3.6 Jakarta Victoria 12168 2020-02-07
## 7254 7254 Irene 3.6 Bekasi Peronia 13988 2019-06-30
## 7304 7304 Irene 3.6 Depok Primadona 9249 2018-04-20
## 7354 7354 Irene 3.6 Bogor Narada 9539 2018-03-23
## 7404 7404 Irene 3.6 Jakarta Permata 11117 2020-01-21
## 7454 7454 Irene 3.6 Bekasi Primadona 8316 2019-10-09
## 7504 7504 Irene 3.6 Jakarta Lavesh 13010 2019-12-05
## 7554 7554 Irene 3.6 Jakarta Lavesh 14844 2019-12-12
## 7604 7604 Irene 3.6 Jakarta Winona 13688 2019-07-09
## 7654 7654 Irene 3.6 Bogor Asoka 7569 2018-08-08
## 7704 7704 Irene 3.6 Depok Asera 9488 2018-12-02
## 7754 7754 Irene 3.6 Jakarta Victoria 11816 2019-09-20
## 7804 7804 Irene 3.6 Bekasi Winona 12367 2018-02-09
## 7854 7854 Irene 3.6 Bekasi Palmyra 9825 2019-04-17
## 7904 7904 Irene 3.6 Tengerang Narada 11825 2018-12-12
## 7954 7954 Irene 3.6 Tengerang Mutiara 12989 2020-05-25
## 8004 8004 Irene 3.6 Depok Peronia 12088 2018-01-20
## 8054 8054 Irene 3.6 Jakarta Arana 13393 2019-06-14
## 8104 8104 Irene 3.6 Jakarta Asera 10476 2018-08-29
## 8154 8154 Irene 3.6 Tengerang Adara 13083 2018-12-02
## 8204 8204 Irene 3.6 Jakarta Alamanda 13712 2020-03-08
## 8254 8254 Irene 3.6 Bogor Primadona 13494 2018-01-26
## 8304 8304 Irene 3.6 Jakarta Primadona 8598 2020-03-23
## 8354 8354 Irene 3.6 Bekasi Victoria 10622 2019-04-02
## 8404 8404 Irene 3.6 Depok Alamanda 13436 2018-04-24
## 8454 8454 Irene 3.6 Tengerang Mutiara 8358 2019-11-02
## 8504 8504 Irene 3.6 Depok Winona 8153 2019-02-22
## 8554 8554 Irene 3.6 Bogor Asera 11694 2019-06-04
## 8604 8604 Irene 3.6 Jakarta Alamanda 14861 2020-06-07
## 8654 8654 Irene 3.6 Jakarta Asera 13668 2019-03-25
## 8704 8704 Irene 3.6 Bekasi Peronia 7743 2018-09-05
## 8754 8754 Irene 3.6 Bogor Alindra 7389 2018-11-23
## 8804 8804 Irene 3.6 Bogor Adara 8612 2020-04-25
## 8854 8854 Irene 3.6 Bogor Primadona 13852 2018-03-07
## 8904 8904 Irene 3.6 Jakarta Sweethome 9930 2018-02-19
## 8954 8954 Irene 3.6 Bogor Alindra 14328 2018-02-21
## 9004 9004 Irene 3.6 Depok Lavesh 8170 2018-02-21
## 9054 9054 Irene 3.6 Tengerang Permata 9806 2020-06-05
## 9104 9104 Irene 3.6 Tengerang Arana 13882 2020-07-31
## 9154 9154 Irene 3.6 Tengerang Arana 14126 2020-03-10
## 9204 9204 Irene 3.6 Bogor Teradamai 14652 2019-06-08
## 9254 9254 Irene 3.6 Depok Asera 14955 2019-08-31
## 9304 9304 Irene 3.6 Depok Adara 12672 2020-07-09
## 9354 9354 Irene 3.6 Tengerang Permata 7219 2018-04-06
## 9404 9404 Irene 3.6 Bekasi Asoka 11678 2019-04-10
## 9454 9454 Irene 3.6 Bogor Peronia 11555 2019-07-02
## 9504 9504 Irene 3.6 Bekasi Adara 14757 2018-05-25
## 9554 9554 Irene 3.6 Bogor Palmyra 13129 2018-04-30
## 9604 9604 Irene 3.6 Bekasi Asera 7928 2020-06-07
## 9654 9654 Irene 3.6 Tengerang Victoria 10190 2019-02-11
## 9704 9704 Irene 3.6 Tengerang Alamanda 8102 2018-07-18
## 9754 9754 Irene 3.6 Jakarta Sweethome 14224 2019-10-21
## 9804 9804 Irene 3.6 Jakarta Winona 9124 2018-06-30
## 9854 9854 Irene 3.6 Jakarta Neon 10619 2019-07-26
## 9904 9904 Irene 3.6 Depok Tiara 7888 2019-08-14
## 9954 9954 Irene 3.6 Depok Tiara 13760 2018-01-05
## Advertisement Classes BookingFee
## 4 12 Low 643.16
## 54 20 Medium 832.88
## 104 10 High 1404.40
## 154 5 Medium 1058.58
## 204 12 High 1382.70
## 254 4 High 1360.30
## 304 19 Low 635.18
## 354 3 Low 358.15
## 404 4 High 1381.60
## 454 3 High 1162.62
## 504 10 Low 501.90
## 554 9 High 1490.20
## 604 12 High 1097.10
## 654 19 Low 640.85
## 704 12 Medium 1040.22
## 754 9 High 1096.29
## 804 9 Low 360.15
## 854 10 Medium 859.28
## 904 14 Low 383.90
## 954 3 High 1331.40
## 1004 3 High 1100.25
## 1054 6 Medium 1014.57
## 1104 5 High 1457.90
## 1154 16 High 1378.20
## 1204 6 Medium 1032.84
## 1254 13 Medium 994.86
## 1304 14 Medium 1048.59
## 1354 9 Medium 818.40
## 1404 11 Medium 1033.38
## 1454 3 Low 394.50
## 1504 3 High 1370.50
## 1554 4 Low 361.65
## 1604 20 High 1384.90
## 1654 20 Medium 1012.41
## 1704 17 High 1411.90
## 1754 10 Medium 993.42
## 1804 11 High 1122.30
## 1854 12 High 1384.80
## 1904 2 High 1401.90
## 1954 1 High 1453.70
## 2004 1 High 1114.38
## 2054 8 High 1482.60
## 2104 16 Low 693.35
## 2154 4 Low 511.26
## 2204 1 High 1096.02
## 2254 4 Medium 831.68
## 2304 6 Medium 829.84
## 2354 19 High 1348.10
## 2404 9 Low 658.28
## 2454 14 High 1395.60
## 2504 8 High 1097.01
## 2554 12 High 1113.48
## 2604 11 Low 488.70
## 2654 4 Medium 837.84
## 2704 1 Low 394.45
## 2754 6 High 1394.90
## 2804 4 High 1147.68
## 2854 15 High 1327.20
## 2904 5 Low 518.58
## 2954 14 High 1449.10
## 3004 5 Low 640.36
## 3054 19 Medium 811.44
## 3104 14 Medium 1003.32
## 3154 14 Low 369.70
## 3204 8 Low 691.46
## 3254 5 High 1471.10
## 3304 5 Medium 1028.16
## 3354 1 Medium 1057.41
## 3404 11 Low 367.20
## 3454 10 Medium 1016.46
## 3504 13 Medium 1015.56
## 3554 13 High 1388.90
## 3604 13 Medium 1025.37
## 3654 14 Low 680.12
## 3704 20 High 1336.00
## 3754 7 High 1426.10
## 3804 3 High 1169.91
## 3854 8 High 1115.10
## 3904 17 Low 663.88
## 3954 7 High 1327.40
## 4004 7 High 1156.41
## 4054 8 High 1084.86
## 4104 19 Low 495.66
## 4154 10 High 1405.70
## 4204 5 Low 516.60
## 4254 10 High 1304.10
## 4304 7 Medium 828.16
## 4354 9 Medium 1038.69
## 4404 10 Low 699.79
## 4454 12 Medium 808.72
## 4504 15 High 1470.30
## 4554 12 Medium 844.96
## 4604 6 Low 688.10
## 4654 10 Low 659.75
## 4704 20 Medium 993.24
## 4754 12 High 1333.90
## 4804 3 Low 536.70
## 4854 16 Low 495.90
## 4904 19 High 1474.00
## 4954 16 Medium 862.00
## 5004 18 Medium 1011.15
## 5054 4 Medium 997.65
## 5104 1 Low 497.64
## 5154 4 Low 351.65
## 5204 10 Low 514.92
## 5254 11 Medium 858.72
## 5304 5 Low 501.78
## 5354 4 High 1445.60
## 5404 4 Low 364.30
## 5454 11 Low 665.00
## 5504 15 High 1411.30
## 5554 16 Low 689.29
## 5604 8 Medium 1002.42
## 5654 16 Medium 1025.46
## 5704 8 Medium 1030.59
## 5754 5 Medium 801.04
## 5804 15 Low 520.08
## 5854 10 High 1449.20
## 5904 16 Low 498.36
## 5954 3 Medium 1053.72
## 6004 16 Medium 811.92
## 6054 10 High 1102.14
## 6104 9 Medium 867.04
## 6154 18 High 1374.00
## 6204 17 High 1439.90
## 6254 15 Low 531.72
## 6304 6 High 1115.55
## 6354 17 Medium 836.32
## 6404 6 Medium 1025.82
## 6454 3 Low 652.75
## 6504 16 Medium 1066.77
## 6554 20 High 1475.80
## 6604 5 High 1385.90
## 6654 6 High 1146.96
## 6704 18 High 1490.20
## 6754 2 Medium 820.24
## 6804 18 Low 366.65
## 6854 6 Low 645.61
## 6904 20 High 1315.80
## 6954 18 Medium 1077.57
## 7004 1 High 1336.40
## 7054 5 Low 526.86
## 7104 5 High 1476.70
## 7154 18 High 1362.10
## 7204 3 High 1095.12
## 7254 19 High 1398.80
## 7304 9 Low 647.43
## 7354 14 Low 667.73
## 7404 19 Medium 1000.53
## 7454 12 Low 498.96
## 7504 15 High 1301.00
## 7554 20 High 1484.40
## 7604 12 High 1368.80
## 7654 16 Low 378.45
## 7704 3 Low 664.16
## 7754 13 Medium 1063.44
## 7804 11 High 1113.03
## 7854 12 Low 687.75
## 7904 4 Medium 1064.25
## 7954 5 High 1169.01
## 8004 4 High 1087.92
## 8054 18 High 1339.30
## 8104 2 Medium 838.08
## 8154 1 High 1308.30
## 8204 3 High 1371.20
## 8254 14 High 1349.40
## 8304 10 Low 515.88
## 8354 17 Medium 849.76
## 8404 3 High 1343.60
## 8454 15 Low 501.48
## 8504 6 Low 489.18
## 8554 1 Medium 1052.46
## 8604 5 High 1486.10
## 8654 8 High 1366.80
## 8704 8 Low 387.15
## 8754 2 Low 369.45
## 8804 4 Low 516.72
## 8854 3 High 1385.20
## 8904 19 Low 695.10
## 8954 2 High 1432.80
## 9004 18 Low 490.20
## 9054 20 Low 686.42
## 9104 10 High 1388.20
## 9154 8 High 1412.60
## 9204 16 High 1465.20
## 9254 14 High 1495.50
## 9304 7 High 1140.48
## 9354 5 Low 360.95
## 9404 19 Medium 1051.02
## 9454 18 Medium 1039.95
## 9504 18 High 1475.70
## 9554 18 High 1312.90
## 9604 2 Low 396.40
## 9654 2 Medium 815.20
## 9704 14 Low 486.12
## 9754 12 High 1422.40
## 9804 9 Low 638.68
## 9854 4 Medium 849.52
## 9904 4 Low 394.40
## 9954 9 High 1376.00
Soal 4
Jika Anda akan mendapatkan bonus 2% dari Booking fee per unit sebagai pemasaran dan juga mendapatkan bonus tambahan 1% jika Anda telah bekerja di perusahaan ini selama lebih dari 3 tahun. Silakan hitung total bonus dengan menggunakan pernyataan if, for, dan break.
R
DataIrene = subset(Data, subset=(Marketing_Name == "Irene"))
DataIrene$Bonus= DataIrene$BookingFee*3/100
DataIreneTotalbonus=sum(DataIrene$Bonus)
Totalbonus## [1] 5884.546
Soal 5
Pada bagian ini, Anda diharapkan dapa membuat fungsi yang dapat menjawab setiap penyataan dibawah ini dengan melibatkan setiap fungsi kontrol yang dipelajari pada pertemuan 7.
- Siapa nama marketing pemasaran terbaik?
- Kota dan Cluster mana yang paling menguntungkan?
- Hitung total biaya iklan Anda, jika Anda harus membayarnya $4 setiap kali iklan.
- Hitung rata-rata biaya iklan untuk setiap marketing di Perusahaan tersebut.
- Hitung Total Pendapatan (dalam Bulanan)
R
Angel = subset (Data, subset=(Marketing_Name == "Angel"))
Sherly=subset (Data, subset=(Marketing_Name == "Sherly"))
Vanessa=subset(Data, subset=(Marketing_Name == "Vanessa" ))
Irene=subset(Data, subset=(Marketing_Name == "Irene"))
Julian=subset (Data, subset=(Marketing_Name == "Julian"))
Jeffry =subset (Data, subset=(Marketing_Name == "Jeffry"))
Nikita =subset (Data, subset=(Marketing_Name =="Nikita"))
Kefas =subset(Data, subset=(Marketing_Name == "Kefas"))
Siana =subset (Data, subset=(Marketing_Name == "Siana"))
Lala=subset (Data, subset=(Marketing_Name == "Lala"))
Fallen =subset (Data, subset=(Marketing_Name == "Fallen"))
Ardifo =subset (Data, subset=(Marketing_Name == "Ardifo"))
Kevin =subset (Data, subset=(Marketing_Name == "Kevin"))
Juen =subset (Data, subset=(Marketing_Name == "Juen"))
Jerrel =subset (Data, subset=(Marketing_Name == "Jerrel"))
Imelda =subset (Data, subset=(Marketing_Name == "Imelda"))
Widi =subset(Data, subset=(Marketing_Name == "Widi"))
Theodor = subset (Data, subset=(Marketing_Name == "Theodor"))
Elvani =subset (Data, subset=(Marketing_Name == "Elvani"))
Jonathan = subset (Data, subset=(Marketing_Name == "Jonathan"))
Sofia =subset (Data, subset=(Marketing_Name == "Sofia"))
Abraham = subset (Data, subset=(Marketing_Name == "Abraham"))
Siti =subset (Data, subset=(Marketing_Name == "Siti"))
Niko =subset(Data, subset=(Marketing_Name == "Niko"))
Sefli =subset (Data, subset=(Marketing_Name == "Selfi"))
Bene =subset(Data, subset=(Marketing_Name == "Bene"))
Diana =subset (Data, subset=(Marketing_Name == "Diana"))
Pupe =subset(Data, subset=(Marketing_Name == "Pupe"))
Andi =subset (Data, subset=(Marketing_Name == "Andi"))
Tatha =subset (Data, subset=(Marketing_Name == "Tatha"))
Endri=subset (Data, subset=(Marketing_Name == "Endri"))
Monika= subset(Data, subset=(Marketing_Name == "Monika"))
Hans =subset(Data, subset=(Marketing_Name == "Hans"))
Debora= subset (Data, subset=(Marketing_Name == "Debora"))
Hanifa= subset (Data, subset=(Marketing_Name == "Hanifa"))
James =subset (Data, subset=(Marketing_Name == "James"))
Jihan =subset (Data, subset=(Marketing_Name == "Jihan"))
Friska =subset (Data, subset=(Marketing_Name == "Friska"))
Ardiwan = subset (Data, subset=(Marketing_Name == "Ardiwan"))
Bakti =subset (Data, subset=(Marketing_Name == "Bakti"))
Anthon =subset (Data, subset=(Marketing_Name == "Anthon"))
Amry =subset (Data, subset=(Marketing_Name == "Amry"))
Wiwik =subset (Data, subset=(Marketing_Name == "Wiwik"))
Bastian = subset (Data, subset=(Marketing_Name == "Bastian"))
Budi = subset (Data, subset=(Marketing_Name == "Budi"))
Leo = subset (Data, subset=(Marketing_Name == "Leo"))
Simon = subset (Data, subset=(Marketing_Name == "Simon"))
Matius = subset (Data, subset=(Marketing_Name == "Matius"))
Arry = subset (Data, subset=(Marketing_Name == "Arry"))
Eliando = subset (Data, subset=(Marketing_Name == "Eliando"))
Nama_Sales = c("Angel","Sherly","Vanessa","Irene","Julian",
"Jeffry","Nikita","Kefas","Siana","Lala",
"Fallen","Ardifo","Kevin","Juen","Jerrel",
"Imelda","Widi","Theodora","Elvani","Jonathan",
"Sofia","Abraham","Siti","Niko","Sefli",
"Bene", "Diana", "Pupe", "Andi", "Tatha",
"Endri", "Monika", "Hans", "Debora","Hanifa",
"James", "Jihan", "Friska","Ardiwan", "Bakti",
"Anthon","Amry", "Wiwik", "Bastian", "Budi",
"Leo","Simon","Matius","Arry", "Eliando")
propertysold = c(sum(Angel$Price), sum(Sherly$Price), sum(Vanessa$Price), sum(Irene$Price),
sum(Julian$Price), sum (Jeffry$Price), sum(Nikita$Price), sum(Kefas$Price), sum(Siana$Price), sum(Lala$Price), sum(Fallen$Price), sum(Ardifo$Price), sum(Kevin$Price), sum (Juen$Price), sum(Jerrel$Price), sum(Imelda$Price), sum(Widi$Price), sum(Theodor$Price), sum(Elvani$Price), sum(Jonathan$Price), sum(Sofia$Price), sum(Abraham$Price), sum(Siti$Price), sum(Niko$Price), sum(Sefli$Price), sum(Bene$Price), sum( Diana$Price), sum (Pupe$Price), sum(Andi$Price), sum( Tatha$Price), sum(Endri$Price), sum( Monika$Price), sum( Hans$Price), sum( Debora$Price), sum(Hanifa$Price), sum (James$Price), sum( Jihan$Price), sum( Friska$Price), sum(Ardiwan$Price), sum(Bakti$Price), sum(Anthon$Price), sum(Amry$Price), sum( Wiwik$Price), sum( Bastian$Price), sum( Budi$Price), sum (Leo$Price), sum(Simon$Price), sum(Matius$Price), sum(Arry$Price), sum( Eliando$Price))
datamarketing= data.frame(Nama_Sales, propertysold)
datamarketing# Best Marketing
datamarketing[which.max(datamarketing$propertysold),]#Kota dan Cluster Paling Menguntungkan
profitable= Data[,c("City","Cluster","Price")]
profitable[which.max(profitable$Price),]#Total Biaya Sdvertisment irene
costforad = subset(Data, subset=(Marketing_Name == "Irene"))
adscost = ( costforad$Advertisement * 4)
Totalcost=print(sum(adscost))## [1] 7992
# Rata-Rata cost iklan
Namasales = c("Angel","Sherly","Vanessa","Irene","Julian",
"Jeffry","Nikita","Kefas","Siana","Lala",
"Fallen","Ardifo","Kevin","Juen","Jerrel",
"Imelda","Widi","Theodora","Elvani","Jonathan",
"Sofia","Abraham","Siti","Niko","Sefli",
"Bene", "Diana", "Pupe", "Andi", "Tatha",
"Endri", "Monika", "Hans", "Debora","Hanifa",
"James", "Jihan", "Friska","Ardiwan", "Bakti",
"Anthon","Amry", "Wiwik", "Bastian", "Budi",
"Leo","Simon","Matius","Arry", "Eliando")
ratacost = for (x in Namasales) {
f= subset ( Data, subset=(Marketing_Name == x ))
c=sum(f$Advertisement * 4)
print (cat(sum(c)/length(f$Id), (cat(x, 'Rata-rata pengeluaran untuk iklan'))))}## Angel Rata-rata pengeluaran untuk iklan42.42NULL
## Sherly Rata-rata pengeluaran untuk iklan40.08NULL
## Vanessa Rata-rata pengeluaran untuk iklan42.78NULL
## Irene Rata-rata pengeluaran untuk iklan39.96NULL
## Julian Rata-rata pengeluaran untuk iklan41.64NULL
## Jeffry Rata-rata pengeluaran untuk iklan41.76NULL
## Nikita Rata-rata pengeluaran untuk iklan40.24NULL
## Kefas Rata-rata pengeluaran untuk iklan42.06NULL
## Siana Rata-rata pengeluaran untuk iklan40.86NULL
## Lala Rata-rata pengeluaran untuk iklan44.38NULL
## Fallen Rata-rata pengeluaran untuk iklan41.42NULL
## Ardifo Rata-rata pengeluaran untuk iklan43.5NULL
## Kevin Rata-rata pengeluaran untuk iklan41.28NULL
## Juen Rata-rata pengeluaran untuk iklan43.34NULL
## Jerrel Rata-rata pengeluaran untuk iklan42.8NULL
## Imelda Rata-rata pengeluaran untuk iklan41.22NULL
## Widi Rata-rata pengeluaran untuk iklan40.04NULL
## Theodora Rata-rata pengeluaran untuk iklan41.88NULL
## Elvani Rata-rata pengeluaran untuk iklan43.18NULL
## Jonathan Rata-rata pengeluaran untuk iklan43.54NULL
## Sofia Rata-rata pengeluaran untuk iklan41.32NULL
## Abraham Rata-rata pengeluaran untuk iklan41.38NULL
## Siti Rata-rata pengeluaran untuk iklan41.68NULL
## Niko Rata-rata pengeluaran untuk iklan43.78NULL
## Sefli Rata-rata pengeluaran untuk iklan41.9NULL
## Bene Rata-rata pengeluaran untuk iklan42.22NULL
## Diana Rata-rata pengeluaran untuk iklan42.82NULL
## Pupe Rata-rata pengeluaran untuk iklan42.36NULL
## Andi Rata-rata pengeluaran untuk iklan41.82NULL
## Tatha Rata-rata pengeluaran untuk iklan43.04NULL
## Endri Rata-rata pengeluaran untuk iklan42.74NULL
## Monika Rata-rata pengeluaran untuk iklan44.18NULL
## Hans Rata-rata pengeluaran untuk iklan42.96NULL
## Debora Rata-rata pengeluaran untuk iklan41.9NULL
## Hanifa Rata-rata pengeluaran untuk iklan38.72NULL
## James Rata-rata pengeluaran untuk iklan40.42NULL
## Jihan Rata-rata pengeluaran untuk iklan42.46NULL
## Friska Rata-rata pengeluaran untuk iklan41.94NULL
## Ardiwan Rata-rata pengeluaran untuk iklan41.42NULL
## Bakti Rata-rata pengeluaran untuk iklan41.88NULL
## Anthon Rata-rata pengeluaran untuk iklan42.5NULL
## Amry Rata-rata pengeluaran untuk iklan41.18NULL
## Wiwik Rata-rata pengeluaran untuk iklan42.28NULL
## Bastian Rata-rata pengeluaran untuk iklan42.3NULL
## Budi Rata-rata pengeluaran untuk iklan42.4NULL
## Leo Rata-rata pengeluaran untuk iklan42.36NULL
## Simon Rata-rata pengeluaran untuk iklan41.68NULL
## Matius Rata-rata pengeluaran untuk iklan39.46NULL
## Arry Rata-rata pengeluaran untuk iklan44.76NULL
## Eliando Rata-rata pengeluaran untuk iklan43.94NULL
# Pendapatan
revenue= (sum(Data$Price)-(sum(Data$Advertisment) * 4))/((max(Data$Work_Exp))*12)
revenue## [1] 919810.5
Kasus 2
Misalkan Anda memiliki proyek riset pasar untuk mempertahankan beberapa pelanggan potensial di perusahaan Anda. Mari kita asumsikan Anda bekerja di perusahaan asuransi ABC. Untuk melakukannya, Anda ingin mengumpulkan kumpulan data berikut:
- Marital_Status : menetapkan status perkawinan acak (“Ya”, “Tidak”)
- Address : berikan alamat acak (JABODETABEK)
- Work_Location : menetapkan lokasi kerja secara acak (JABODETABEK)
- Age : menetapkan urutan angka acak (dari 19 hingga 60)
- Academic : menetapkan tingkat akademik acak (“J.School”, “H.School”, “Sarjana”, “Magister”, “Phd”)
- Job : 10 pekerjaan acak untuk setiap tingkat akademik
- Grade : 5 nilai acak untuk setiap Pekerjaan
- Income : tetapkan pendapatan yang mungkin untuk setiap Pekerjaan
- Spending : tetapkan kemungkinan pengeluaran untuk setiap Pekerjaan
- Number_of_children: menetapkan nomor acak di antara 0 dan 10 (sesuai dengan status perkawinan)
- Private_vehicle : menetapkan kemungkinan kendaraan pribadi untuk setiap orang (“Mobil”, “sepeda motor”, “Umum”)
- Home : “Sewa”, “Milik”, “Kredit”
Soal 1
Tolong berikan saya kumpulan data tentang informasi 50000 pelanggan yang mengacu pada setiap variabel di atas!
R
marital_status <- sample(c("Yes", "No"), 50000, replace = T)
Address <-sample(c("Jakarta", "Bogor", "Depok", "Tangerang", "Bekasi"),50000, replace=T)
Work_Location <-sample(c("Jakarta", "Bogor", "Depok", "Tangerang", "Bekasi"),50000, replace=T)
Age <-floor (runif(50000,19,60))
Academic <-sample(c("J.School", "H.School", "Bachelor Degree", "Master",
"Phd"), 50000, replace = T)
Grade <-sample(c("S+", "S", "A+", "A",
"B"), 50000, replace=T)
Number_of_children <- ifelse(marital_status =="Yes", sample((c(0:10)), length(marital_status =="Yes"), replace=T), "0")
Private_vehicle <- sample(c("Car", "Motorcycle", "Public"),
50000, replace=T)
Home <- sample(c("Rent", "Own", "Credit"), 50000, replace=T)
Datasoal2 <-data.frame (marital_status, Address, Work_Location, Age, Academic, Grade, Number_of_children, Private_vehicle, Home)
library(data.table)
data.table(Datasoal2)Job <- ifelse (Datasoal2$Academic == "J.School", sample(c("Cleaning Service", "Security Guard", "Waiter")),
ifelse(Datasoal2$Academic == "H.School", sample(c("Waiter", "Security Guard")), ifelse(Datasoal2$Academic == "Bachelor Degree", sample(c("CEO", "Teacher")), ifelse(Datasoal2$Academic == "Master",sample(c("Board Director", "Actuarist", "Software Enginering")), sample(c("Head of Research", "Teacher"))
))))
Datasoal2 = data.frame(marital_status, Address, Work_Location, Age, Academic,Job, Grade, Number_of_children, Private_vehicle, Home)
Income <- ifelse (Datasoal2$Job == "Cleaning Service", sample(c(5000:6000)),
ifelse(Datasoal2$Job == "Clerk", sample(c(4500:5500)), ifelse(Datasoal2$Job == "Waiter", sample(c(4500:6000)), ifelse(Datasoal2$Job == "Teacher",sample(c(6000:9000)), ifelse (Datasoal2$Job == "Actuarist", sample(c(8500:13000)), ifelse(Datasoal2$ Job == "Software Enginering", sample(c(8000:12000)), ifelse (Datasoal2$Job =="Security Guard ", sample(c(5000:5500)), ifelse (Datasoal2$Job== "Head of Research", sample(c(9000:14000)), ifelse(Datasoal2$Job == "CEO", sample(c(13000:20000)), sample(c(11000:16000))
)))))))))
Spending <- ifelse (Datasoal2$Job == "Cleaning Service", sample(c(3000:4500)),
ifelse(Datasoal2$Job == "Clerk", sample(c(2200:5100)), ifelse(Datasoal2$Job == "Waiter", sample(c(3000:5000)), ifelse(Datasoal2$Job == "Teacher",sample(c(4000:7500)), ifelse (Datasoal2$Job == "Actuarist", sample(c(3500:9000)), ifelse(Datasoal2$ Job == "Software Enginering", sample(c(5000:7500)), ifelse (Datasoal2$Job =="Security Guard ", sample(c(4000:4500)), ifelse (Datasoal2$Job== "Head of Research", sample(c(6000:10500)), ifelse(Datasoal2$Job == "CEO", sample(c(6000:10000)), sample(c(5500:11000))
)))))))))
Datasoal2$Job=Job
Datasoal2$Income = Income
Datasoal2$Spending = Spending
Datasoal2Soal 2
Ringkasan Statistik penting seperti apa yang bisa Anda dapatkan dari kumpulan data Anda?
R
summary(Datasoal2)## marital_status Address Work_Location Age
## Length:50000 Length:50000 Length:50000 Min. :19.00
## Class :character Class :character Class :character 1st Qu.:29.00
## Mode :character Mode :character Mode :character Median :39.00
## Mean :38.98
## 3rd Qu.:49.00
## Max. :59.00
## Academic Job Grade Number_of_children
## Length:50000 Length:50000 Length:50000 Length:50000
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## Private_vehicle Home Income Spending
## Length:50000 Length:50000 Min. : 4500 Min. : 3000
## Class :character Class :character 1st Qu.: 6224 1st Qu.: 4619
## Mode :character Mode :character Median : 9869 Median : 6398
## Mean :10067 Mean : 6455
## 3rd Qu.:13091 3rd Qu.: 7968
## Max. :20000 Max. :11000
`
Soal 3
Menurut perhitungan dan analisis Anda, pelanggan mana yang potensial untuk Anda pertahankan?
R
Datasoal2$NetWorth = Datasoal2$Income-Datasoal2$Spending
Datasoal2#Potential untuk dipertahankan
subset(Datasoal2, NetWorth>= 7000)Referensi
- ref 1
- ref 2
- ref 3