Manipulasi data, manipulasi data dapat diartikan sebagai proses perubahan data sesuai dengan aturan yang kita terapkan. Manfaat manipulasi data dapat kita gunakan untuk melakukan prediksi data. Dengan adanya prediksi tersebut kita dapat membuat rencana untuk mencegah hal-hal yang tidak kita inginkan.Berikut ini merupakan contoh penerapan manipulasi data inflow uang kartal di Pulau Sumatra
library(readxl)
inflowsumatra <- read_excel(path = "inflowsumatra.xlsx")
inflowsumatra
## # A tibble: 10 x 12
## Provinsi `2011` `2012` `2013` `2014` `2015` `2016` `2017` `2018` `2019`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Aceh 2308. 2620. 36337. 4.57e3 4710. 5775. 5514. 5799. 7509.
## 2 Sumatera Utara 23238. 25981. 18120. 3.05e4 30254. 34427. 35617. 41769. 47112.
## 3 Sumatera Barat 9385. 11192. 14056. 1.41e4 13309. 14078. 15312. 15058. 14750.
## 4 Riau 3012. 4447. 8933. 6.36e3 7156. 8211. 8553. 10730. 10915.
## 5 Kep. Riau 1426. 2236. 3378. 2.56e3 3218. 4317. 4412. 5134. 6077.
## 6 Jambi 1868. 2138. 3047. 5.17e3 4978. 4398. 4404. 5657. 6486.
## 7 Sumatera Sela~ 7820. 9126. 8647. 1.00e4 10797. 12752. 13075. 14267. 14812.
## 8 Bengkulu 1153. 1201. 2378. 3.26e3 2791. 2889. 3620. 4150. 5789.
## 9 Lampung 7690. 6969. 3474. 9.45e3 8160. 9373. 12078. 13415. 17046.
## 10 Kep. Bangka B~ 0 0 0 1.37e1 1177. 1544. 1164. 1517. 3265.
## # ... with 2 more variables: `2020` <dbl>, `2021` <dbl>
library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5 v purrr 0.3.4
## v tibble 3.1.6 v dplyr 1.0.8
## v tidyr 1.2.0 v stringr 1.4.0
## v readr 2.1.2 v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
sumatra1 <- select(inflowsumatra,'Provinsi', '2011')
sumatra1
## # A tibble: 10 x 2
## Provinsi `2011`
## <chr> <dbl>
## 1 Aceh 2308.
## 2 Sumatera Utara 23238.
## 3 Sumatera Barat 9385.
## 4 Riau 3012.
## 5 Kep. Riau 1426.
## 6 Jambi 1868.
## 7 Sumatera Selatan 7820.
## 8 Bengkulu 1153.
## 9 Lampung 7690.
## 10 Kep. Bangka Belitung 0
sumatra2 <- select(inflowsumatra, -'2015')
sumatra2
## # A tibble: 10 x 11
## Provinsi `2011` `2012` `2013` `2014` `2016` `2017` `2018` `2019` `2020`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Aceh 2308. 2620. 36337. 4.57e3 5775. 5514. 5799. 7509. 6641.
## 2 Sumatera Utara 23238. 25981. 18120. 3.05e4 34427. 35617. 41769. 47112. 36609.
## 3 Sumatera Barat 9385. 11192. 14056. 1.41e4 14078. 15312. 15058. 14750. 10696.
## 4 Riau 3012. 4447. 8933. 6.36e3 8211. 8553. 10730. 10915. 9148.
## 5 Kep. Riau 1426. 2236. 3378. 2.56e3 4317. 4412. 5134. 6077. 6175.
## 6 Jambi 1868. 2138. 3047. 5.17e3 4398. 4404. 5657. 6486. 5628.
## 7 Sumatera Sela~ 7820. 9126. 8647. 1.00e4 12752. 13075. 14267. 14812. 11756.
## 8 Bengkulu 1153. 1201. 2378. 3.26e3 2889. 3620. 4150. 5789. 4971.
## 9 Lampung 7690. 6969. 3474. 9.45e3 9373. 12078. 13415. 17046. 15158.
## 10 Kep. Bangka B~ 0 0 0 1.37e1 1544. 1164. 1517. 3265. 2562.
## # ... with 1 more variable: `2021` <dbl>
sumatra3 <- inflowsumatra %>% select('Provinsi', '2015', '2016', '2017' , '2018' , '2019' , '2020')
sumatra3
## # A tibble: 10 x 7
## Provinsi `2015` `2016` `2017` `2018` `2019` `2020`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Aceh 4710. 5775. 5514. 5799. 7509. 6641.
## 2 Sumatera Utara 30254. 34427. 35617. 41769. 47112. 36609.
## 3 Sumatera Barat 13309. 14078. 15312. 15058. 14750. 10696.
## 4 Riau 7156. 8211. 8553. 10730. 10915. 9148.
## 5 Kep. Riau 3218. 4317. 4412. 5134. 6077. 6175.
## 6 Jambi 4978. 4398. 4404. 5657. 6486. 5628.
## 7 Sumatera Selatan 10797. 12752. 13075. 14267. 14812. 11756.
## 8 Bengkulu 2791. 2889. 3620. 4150. 5789. 4971.
## 9 Lampung 8160. 9373. 12078. 13415. 17046. 15158.
## 10 Kep. Bangka Belitung 1177. 1544. 1164. 1517. 3265. 2562.
sumatra4 <- inflowsumatra %>% rename('Tahun 2011' = '2011' , 'Tahun 2012' = '2012' , 'Tahun 2013' = '2013' , 'Tahun 2014' = '2014' , 'Tahun 2015' = '2015' , 'Tahun 2016' = '2016' , 'Tahun 2017' = '2017' , 'Tahun 2018' = '2018' , 'Tahun 2019' = '2019' , 'Tahun 2020' = '2020' , 'Tahun 2021' = '2021')
head(sumatra4)
## # A tibble: 6 x 12
## Provinsi `Tahun 2011` `Tahun 2012` `Tahun 2013` `Tahun 2014` `Tahun 2015`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Aceh 2308. 2620. 36337. 4567. 4710.
## 2 Sumatera Uta~ 23238. 25981. 18120. 30503. 30254.
## 3 Sumatera Bar~ 9385. 11192. 14056. 14103. 13309.
## 4 Riau 3012. 4447. 8933. 6358. 7156.
## 5 Kep. Riau 1426. 2236. 3378. 2563. 3218.
## 6 Jambi 1868. 2138. 3047. 5169. 4978.
## # ... with 6 more variables: `Tahun 2016` <dbl>, `Tahun 2017` <dbl>,
## # `Tahun 2018` <dbl>, `Tahun 2019` <dbl>, `Tahun 2020` <dbl>,
## # `Tahun 2021` <dbl>
sumatra5 <- inflowsumatra %>%
filter(Provinsi == 'Riau') %>%
select( 'Provinsi', '2015','2016', '2017','2018', '2019', '2020')
sumatra5
## # A tibble: 1 x 7
## Provinsi `2015` `2016` `2017` `2018` `2019` `2020`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Riau 7156. 8211. 8553. 10730. 10915. 9148.
str(inflowsumatra)
## tibble [10 x 12] (S3: tbl_df/tbl/data.frame)
## $ Provinsi: chr [1:10] "Aceh" "Sumatera Utara" "Sumatera Barat" "Riau" ...
## $ 2011 : num [1:10] 2308 23238 9385 3012 1426 ...
## $ 2012 : num [1:10] 2620 25981 11192 4447 2236 ...
## $ 2013 : num [1:10] 36337 18120 14056 8933 3378 ...
## $ 2014 : num [1:10] 4567 30503 14103 6358 2563 ...
## $ 2015 : num [1:10] 4710 30254 13309 7156 3218 ...
## $ 2016 : num [1:10] 5775 34427 14078 8211 4317 ...
## $ 2017 : num [1:10] 5514 35617 15312 8553 4412 ...
## $ 2018 : num [1:10] 5799 41769 15058 10730 5134 ...
## $ 2019 : num [1:10] 7509 47112 14750 10915 6077 ...
## $ 2020 : num [1:10] 6641 36609 10696 9148 6175 ...
## $ 2021 : num [1:10] 3702 31840 10748 7769 5009 ...
str(inflowsumatra %>% group_by(Provinsi))
## grouped_df [10 x 12] (S3: grouped_df/tbl_df/tbl/data.frame)
## $ Provinsi: chr [1:10] "Aceh" "Sumatera Utara" "Sumatera Barat" "Riau" ...
## $ 2011 : num [1:10] 2308 23238 9385 3012 1426 ...
## $ 2012 : num [1:10] 2620 25981 11192 4447 2236 ...
## $ 2013 : num [1:10] 36337 18120 14056 8933 3378 ...
## $ 2014 : num [1:10] 4567 30503 14103 6358 2563 ...
## $ 2015 : num [1:10] 4710 30254 13309 7156 3218 ...
## $ 2016 : num [1:10] 5775 34427 14078 8211 4317 ...
## $ 2017 : num [1:10] 5514 35617 15312 8553 4412 ...
## $ 2018 : num [1:10] 5799 41769 15058 10730 5134 ...
## $ 2019 : num [1:10] 7509 47112 14750 10915 6077 ...
## $ 2020 : num [1:10] 6641 36609 10696 9148 6175 ...
## $ 2021 : num [1:10] 3702 31840 10748 7769 5009 ...
## - attr(*, "groups")= tibble [10 x 2] (S3: tbl_df/tbl/data.frame)
## ..$ Provinsi: chr [1:10] "Aceh" "Bengkulu" "Jambi" "Kep. Bangka Belitung" ...
## ..$ .rows : list<int> [1:10]
## .. ..$ : int 1
## .. ..$ : int 8
## .. ..$ : int 6
## .. ..$ : int 10
## .. ..$ : int 5
## .. ..$ : int 9
## .. ..$ : int 4
## .. ..$ : int 3
## .. ..$ : int 7
## .. ..$ : int 2
## .. ..@ ptype: int(0)
## ..- attr(*, ".drop")= logi TRUE
sumatra6 <- inflowsumatra %>%
group_by(Provinsi)
sumatra6
## # A tibble: 10 x 12
## # Groups: Provinsi [10]
## Provinsi `2011` `2012` `2013` `2014` `2015` `2016` `2017` `2018` `2019`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Aceh 2308. 2620. 36337. 4.57e3 4710. 5775. 5514. 5799. 7509.
## 2 Sumatera Utara 23238. 25981. 18120. 3.05e4 30254. 34427. 35617. 41769. 47112.
## 3 Sumatera Barat 9385. 11192. 14056. 1.41e4 13309. 14078. 15312. 15058. 14750.
## 4 Riau 3012. 4447. 8933. 6.36e3 7156. 8211. 8553. 10730. 10915.
## 5 Kep. Riau 1426. 2236. 3378. 2.56e3 3218. 4317. 4412. 5134. 6077.
## 6 Jambi 1868. 2138. 3047. 5.17e3 4978. 4398. 4404. 5657. 6486.
## 7 Sumatera Sela~ 7820. 9126. 8647. 1.00e4 10797. 12752. 13075. 14267. 14812.
## 8 Bengkulu 1153. 1201. 2378. 3.26e3 2791. 2889. 3620. 4150. 5789.
## 9 Lampung 7690. 6969. 3474. 9.45e3 8160. 9373. 12078. 13415. 17046.
## 10 Kep. Bangka B~ 0 0 0 1.37e1 1177. 1544. 1164. 1517. 3265.
## # ... with 2 more variables: `2020` <dbl>, `2021` <dbl>
inflowsumatra %>%
filter(Provinsi == 'Riau') %>%
count('2015', sort = TRUE)
## # A tibble: 1 x 2
## `"2015"` n
## <chr> <int>
## 1 2015 1
sumatra7 <- inflowsumatra %>%
mutate('2012' = inflowsumatra$`2013`/2)
sumatra7
## # A tibble: 10 x 12
## Provinsi `2011` `2012` `2013` `2014` `2015` `2016` `2017` `2018` `2019`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Aceh 2308. 18168. 36337. 4.57e3 4710. 5775. 5514. 5799. 7509.
## 2 Sumatera Utara 23238. 9060. 18120. 3.05e4 30254. 34427. 35617. 41769. 47112.
## 3 Sumatera Barat 9385. 7028. 14056. 1.41e4 13309. 14078. 15312. 15058. 14750.
## 4 Riau 3012. 4467. 8933. 6.36e3 7156. 8211. 8553. 10730. 10915.
## 5 Kep. Riau 1426. 1689. 3378. 2.56e3 3218. 4317. 4412. 5134. 6077.
## 6 Jambi 1868. 1523. 3047. 5.17e3 4978. 4398. 4404. 5657. 6486.
## 7 Sumatera Sela~ 7820. 4324. 8647. 1.00e4 10797. 12752. 13075. 14267. 14812.
## 8 Bengkulu 1153. 1189. 2378. 3.26e3 2791. 2889. 3620. 4150. 5789.
## 9 Lampung 7690. 1737. 3474. 9.45e3 8160. 9373. 12078. 13415. 17046.
## 10 Kep. Bangka B~ 0 0 0 1.37e1 1177. 1544. 1164. 1517. 3265.
## # ... with 2 more variables: `2020` <dbl>, `2021` <dbl>
ggplot(data = inflowsumatra, mapping = aes(x = Provinsi, y = `2018`)) +
geom_point()