Email:
RPubs: https://rpubs.com/akun-rpubs-anda/


1 Regresi Linear Berganda

Dalam proyek ini saya memberikan anda dataset insurance.csv, informasi lanjut mengenai data ini dapat anda baca di Kaggle.

Tugas kalian adalah sebagai berikut:

1.1 Meringkas informasi penting yang terkandung data insurance.csv tersebut.

Berikut adalah Informasi yang telah diringkas:

1.1.1 Persiapan Data

1.1.1.2 Import Data

## [1] 1338    7
## [1] "age"      "sex"      "bmi"      "children" "smoker"   "region"   "charges"

1.1.1.3 Deskripsi Variabel

Variabel Deskripsi
age age of primary beneficiary
sex insurance contractor gender, female, male
bmi body mass index, providing an understanding of body, weights that are relatively high or low
children Number of children covered by health insurance / Number of dependents
smoker Smoking
region The beneficiary’s residential area in the US, northeast, southeast, southwest, northwest
charges Individual medical costs billed by health insurance

1.1.2 Pembersihan Data

1.1.2.1 Cek Struktur Data

1.1.2.2 Cek Data Hilang

##      age      sex      bmi children   smoker   region  charges 
##        0        0        0        0        0        0        0

1.1.2.3 Cek Data Duplikat

##   row_of_data row_of_unique.data
## 1        1338               1337

Dikarenakan terdapat data yang duplikat, maka kita harus menghilangkan salah satu data nya

##   row_of_data row_of_unique.data
## 1        1337               1337
##       age            sex           bmi           children     smoker    
##  Min.   :18.00   female:662   Min.   :15.96   Min.   :0.000   no :1063  
##  1st Qu.:27.00   male  :675   1st Qu.:26.29   1st Qu.:0.000   yes: 274  
##  Median :39.00                Median :30.40   Median :1.000             
##  Mean   :39.22                Mean   :30.66   Mean   :1.096             
##  3rd Qu.:51.00                3rd Qu.:34.70   3rd Qu.:2.000             
##  Max.   :64.00                Max.   :53.13   Max.   :5.000             
##        region       charges     
##  northeast:324   Min.   : 1122  
##  northwest:324   1st Qu.: 4746  
##  southeast:364   Median : 9386  
##  southwest:325   Mean   :13279  
##                  3rd Qu.:16658  
##                  Max.   :63770

1.1.3 Tingkah laku Anggota Asuransi

1.1.3.1 Umur dari Anggota Asuransi

Distribusi usia anggota asuransi relatif sama, kecuali anggota 18 dan 19 tahun yang memiliki populasi lebih tinggi (di atas 60). Saya juga membuat kelompok usia anggota pada tabel di bawah ini.

##     Agecut total
## 1  [15,20]   165
## 2  (20,25]   140
## 3  (25,30]   138
## 4  (30,35]   130
## 5  (35,40]   127
## 6  (40,45]   137
## 7  (45,50]   144
## 8  (50,55]   140
## 9  (55,60]   125
## 10 (60,65]    91

1.1.3.2 Jenis kelamin dari Anggota Asuransi

Jenis kelamin peserta asuransi hampir sama (laki-laki = 675 orang & perempuan = 662 orang).

1.1.3.3 Wilayah dari Anggota Asuransi

Wilayah tempat tinggal anggota asuransi tersebar merata.

1.1.3.4 Anggota Asuransi yang Merokok (Smoker)

Banyak anggotanya bukan perokok (79,5% atau 1064 orang) dan sisanya adalah perokok.

1.1.3.5 Anak dari Anggota Asuransi

Dalam data tersebut, sebanyak 573 orang peserta jaminan kesehatan belum memiliki anak

1.1.3.6 Body Mass Index dari Anggota Asuransi

Indeks massa tubuh anggota terdistribusi normal.

1.1.3.7 Biaya Asuransi dari Anggota Asuransi

Distribusi biaya medis individu yang ditagih oleh asuransi kesehatan memiliki kecenderungan positif.

1.2 Memahami faktor-faktor apa yang mempengaruhi premi asuransi konsumen.

Dari Analisis yang telah saya lakukan diatas, saya dapat memberikan informasi penting mengenai asuransi kesehatan, yaitu;

  • Variabel Sex tidak memberikan dampak kepada biaya asuransi pengobatan, karena baik perempuan maupun laki-laki memiliki distribusi yang sama.
  • Variabel Region atau wilayah juga tidak memberikan dampak yang besar dalam penentuan biaya asuransi pengobatan, karena dari 4 wilayah yang tercantum dalam data, semuanya memiliki distribusi yang sama.
  • Variabel Smoker memberikan dampak dalam menentukan biaya asuransi pengobatan, mengapa? karena distribusi datanya menunjukkan perbedaan yang sangat signifikan.
  • Variabel children tidak semua faktor memberikan dampak, kecuali orang yang jumlah anaknya nol (tidak memiliki anak). Jadi, jika tidak memiliki anak maka akan berdampak pada asuransi biaya pengobatan.

Berdasarkan beberapa informasi di atas, saya bisa memberikan kesimpulan bahwa variabel smoker, total children, age, BMI akan memberikan dampak pada biaya asuransi pengobatan, variabel itu semualah yang jadi penentuan berapa total biaya yang harus dikeluarkan nasabah.

1.3 Menemukan model terbaik yang dapat memprediksi premi asuransi konsumen

1.3.1 Kepadatan Variabel Harga (Charges) Vs Jenis Kelamin (Sex)

1.3.2 Kepadatan Variabel Harga (Charges) Vs Wilayah (Region)

1.3.3 Kepadatan Variabel Harga (Charges) Vs Merokok (Smoker)

1.3.4 Kepadatan Variabel Harga (Charges) Vs Anak (Children)

1.3.5 Menyatukan Persamaan

Karena variabel Perokok (smoker), Anak (Children), dan BMI berpengaruh terhadap asuransi biaya pengobatan, saya mengelompokkan faktor-faktor tersebut ke dalam 8 kategori yang ditunjukkan pada sub-bab di bawah ini. Akhirnya, saya hanya memiliki usia atau dan BMI sebagai variabel input untuk persamaan prediksi saya. Persamaan akan ditampilkan di sub-bab, jadi Anda perlu memeriksanya.

Kategori - 1 : Merokok, Tidak ada anak, BMI dibawah 30.

Kategori - 2 : Merokok, Tidak ada anak, BMI diatas 30.

Kategori - 3 : Merokok, Memiliki anak, BMI dibawah 30.

Kategori - 4 : Merokok, Memiliki anak, BMI diatas 30.

Kategori - 5 : Tidak Merokok, Tidak ada anak, BMI dibawah 30.

Kategori - 6 : Tidak Merokok, Tidak ada anak, BMI diatas 30.

Kategori - 7 : Tidak Merokok, Memiliki anak, BMI dbawah 30.

Kategori - 8 : Tidak Merokok, Memiliki anak, BMI diatas 30.

1.3.5.1 Kategori - 1

Merokok, Tidak ada anak, BMI dibawah 30

Tampilan grafik Age vs Charges dapat didekati dengan menggunakan regresi linier.

BMI vs Charges terlihat memiliki korelasi yang tidak teratur.

## 
## Call:
## lm(formula = charges ~ age, data = ins_smoker_nochild_under30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -5740.7 -2372.9  -776.5   612.0 17119.6 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 11970.56    1454.78   8.228 5.55e-11 ***
## age           252.39      36.25   6.962 5.70e-09 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4276 on 52 degrees of freedom
## Multiple R-squared:  0.4824, Adjusted R-squared:  0.4725 
## F-statistic: 48.46 on 1 and 52 DF,  p-value: 5.696e-09
## 
## Call:
## lm(formula = charges ~ age + bmi, data = ins_smoker_nochild_under30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2539.3 -1754.2 -1059.9  -203.1 15678.0 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -956.74    5104.29  -0.187   0.8521    
## age           251.20      34.35   7.312 1.75e-09 ***
## bmi           505.18     192.06   2.630   0.0112 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4051 on 51 degrees of freedom
## Multiple R-squared:  0.5442, Adjusted R-squared:  0.5264 
## F-statistic: 30.45 on 2 and 51 DF,  p-value: 1.985e-09

Dari kedua ringkasan tersebut, saya memutuskan untuk menggunakan regresi linier dengan 2 variabel (umur dan BMI) karena memiliki nilai R-Squared yang lebih baik.

Jadi persamaannya akan seperti ini:

-956.74 + (251.20 * AGE) + (505.18 * BMI)

1.3.5.2 Kategori - 2

Merokok, Tidak ada anak, BMI diatas 30.

Tampilan grafik Age vs Charges dapat didekati dengan menggunakan regresi linier.

BMI vs Charges terlihat memiliki korelasi yang tidak teratur.

## 
## Call:
## lm(formula = charges ~ age, data = ins_smoker_nochild_over30)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -19722  -2239  -1235    786  19807 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 28983.17    1737.81  16.678  < 2e-16 ***
## age           306.74      43.38   7.071 2.05e-09 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5361 on 59 degrees of freedom
## Multiple R-squared:  0.4587, Adjusted R-squared:  0.4495 
## F-statistic:    50 on 1 and 59 DF,  p-value: 2.05e-09
## 
## Call:
## lm(formula = charges ~ age + bmi, data = ins_smoker_nochild_over30)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -16667.0  -1505.1   -737.2     47.9  22684.4 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  8120.10    5338.78   1.521 0.133702    
## age           292.16      38.73   7.544 3.57e-10 ***
## bmi           614.01     150.40   4.082 0.000138 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4766 on 58 degrees of freedom
## Multiple R-squared:  0.5795, Adjusted R-squared:  0.565 
## F-statistic: 39.97 on 2 and 58 DF,  p-value: 1.225e-11

Dari kedua ringkasan tersebut, saya memutuskan untuk menggunakan regresi linier dengan 2 variabel (Age dan BMI) karena memiliki nilai R-Squared yang lebih baik.

Jadi persamaannya akan seperti ini:

8120.10 + (292.16 * AGE) + (614.01 * BMI)

1.3.5.3 Kategori - 3

Merokok, Memiliki anak, BMI dibawah 30.

Tampilan grafik Age vs Charges dapat didekati dengan menggunakan regresi linier.

BMI vs Charges terlihat memiliki korelasi yang tidak teratur.

## 
## Call:
## lm(formula = charges ~ age, data = ins_smoker_child_under30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4651.4 -1487.2  -352.5   637.6 15865.3 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 10842.61    1332.43   8.137 7.77e-12 ***
## age           274.71      33.18   8.280 4.19e-12 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3199 on 73 degrees of freedom
## Multiple R-squared:  0.4843, Adjusted R-squared:  0.4772 
## F-statistic: 68.56 on 1 and 73 DF,  p-value: 4.194e-12
## 
## Call:
## lm(formula = charges ~ age + bmi, data = ins_smoker_child_under30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2741.8 -1070.1  -608.8    -5.2 15619.8 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  2428.48    2769.81   0.877   0.3835    
## age           259.48      31.33   8.282 4.56e-12 ***
## bmi           359.27     105.64   3.401   0.0011 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2989 on 72 degrees of freedom
## Multiple R-squared:  0.5557, Adjusted R-squared:  0.5433 
## F-statistic: 45.02 on 2 and 72 DF,  p-value: 2.075e-13

Dari kedua ringkasan tersebut, saya memutuskan untuk menggunakan regresi linier dengan 2 variabel (Age dan BMI) karena memiliki nilai R-Squared yang lebih baik.

Jadi persamaannya akan seperti ini:

2428.48 + (259.48 * AGE) + (359.27 * BMI)

1.3.5.4 Kategori - 4

Merokok, Memiliki anak, BMI diatas 30.

Tampilan grafik Age vs Charges dapat didekati dengan menggunakan regresi linier.

BMI vs Charges terlihat memiliki korelasi yang tidak teratur.

## 
## Call:
## lm(formula = charges ~ age, data = ins_smoker_child_over30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4354.3 -2271.4  -859.3  1174.1 18445.4 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 32648.20    1361.98  23.971  < 2e-16 ***
## age           241.21      31.86   7.572 4.89e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3723 on 82 degrees of freedom
## Multiple R-squared:  0.4115, Adjusted R-squared:  0.4043 
## F-statistic: 57.34 on 1 and 82 DF,  p-value: 4.889e-11
## 
## Call:
## lm(formula = charges ~ age + bmi, data = ins_smoker_child_over30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2212.2 -1334.7  -653.6    40.7 17621.6 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 16021.03    3341.64   4.794 7.30e-06 ***
## age           253.72      27.69   9.162 3.81e-14 ***
## bmi           447.91      84.22   5.318 9.08e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3225 on 81 degrees of freedom
## Multiple R-squared:  0.5638, Adjusted R-squared:  0.553 
## F-statistic: 52.35 on 2 and 81 DF,  p-value: 2.553e-15

Dari kedua ringkasan tersebut, saya memutuskan untuk menggunakan regresi linier dengan 2 variabel (Age dan BMI) karena memiliki nilai R-Squared yang lebih baik.

Jadi persamaannya akan seperti ini:

16021.03 + (253.72 * AGE) + (447.91 * BMI)

1.3.5.5 Kategori - 5

Tidak Merokok, Tidak ada anak, BMI dibawah 30.

Tampilan grafik Age vs Charges dapat didekati dengan menggunakan regresi linier.

BMI vs Charges terlihat memiliki korelasi yang tidak teratur.

## 
## Call:
## lm(formula = charges ~ age, data = ins_nonsmoker_nochild_under30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2428.1 -1440.0  -886.5  -391.6 21672.8 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -3239.15     687.81  -4.709 4.43e-06 ***
## age           277.00      16.79  16.495  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3950 on 217 degrees of freedom
## Multiple R-squared:  0.5563, Adjusted R-squared:  0.5543 
## F-statistic: 272.1 on 1 and 217 DF,  p-value: < 2.2e-16
## 
## Call:
## lm(formula = charges ~ age + bmi, data = ins_nonsmoker_nochild_under30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2457.4 -1453.0  -852.6  -391.1 21715.4 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -3791.02    2191.60  -1.730   0.0851 .  
## age           276.56      16.91  16.354   <2e-16 ***
## bmi            22.40      84.44   0.265   0.7911    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3958 on 216 degrees of freedom
## Multiple R-squared:  0.5565, Adjusted R-squared:  0.5524 
## F-statistic: 135.5 on 2 and 216 DF,  p-value: < 2.2e-16

Dari kedua ringkasan tersebut, saya memutuskan untuk menggunakan regresi linier dengan 1 variabel (Age) karena memiliki nilai R-Squared yang lebih baik.

Jadi persamaannya akan seperti ini:

-3239.15 + (277.00 * AGE)

1.3.5.6 Katgeori - 6

Tidak Merokok, Tidak ada anak, BMI diatas 30.

Tampilan grafik Age vs Charges dapat didekati dengan menggunakan regresi linier.

BMI vs Charges terlihat memiliki korelasi yang tidak teratur.

## 
## Call:
## lm(formula = charges ~ age, data = ins_nonsmoker_nochild_over30)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
##  -2601  -1680  -1101   -365  20402 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -2138.96     639.67  -3.344  0.00096 ***
## age           253.69      14.73  17.219  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3868 on 237 degrees of freedom
## Multiple R-squared:  0.5558, Adjusted R-squared:  0.5539 
## F-statistic: 296.5 on 1 and 237 DF,  p-value: < 2.2e-16
## 
## Call:
## lm(formula = charges ~ age + bmi, data = ins_nonsmoker_nochild_over30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2825.0 -1641.6 -1087.4  -382.4 20308.3 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -392.10    2335.28  -0.168    0.867    
## age           254.50      14.78  17.217   <2e-16 ***
## bmi           -50.42      64.82  -0.778    0.437    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3872 on 236 degrees of freedom
## Multiple R-squared:  0.5569, Adjusted R-squared:  0.5532 
## F-statistic: 148.3 on 2 and 236 DF,  p-value: < 2.2e-16

Dari kedua ringkasan tersebut, saya memutuskan untuk menggunakan regresi linier dengan 1 variabel (Age) karena memiliki nilai R-Squared yang lebih baik.

Jadi persamaannya akan seperti ini:

-2155.79 + (254.01 * AGE)

1.3.5.7 Kategori - 7

Tidak Merokok, Memiliki anak, BMI dbawah 30.

Tampilan grafik Age vs Charges dapat didekati dengan menggunakan regresi linier.

BMI vs Charges terlihat memiliki korelasi yang tidak teratur.

## 
## Call:
## lm(formula = charges ~ age, data = ins_nonsmoker_child_under30)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
##  -3050  -2080  -1578   -808  22413 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -884.08    1029.59  -0.859    0.391    
## age           247.85      25.87   9.581   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4975 on 281 degrees of freedom
## Multiple R-squared:  0.2462, Adjusted R-squared:  0.2436 
## F-statistic:  91.8 on 1 and 281 DF,  p-value: < 2.2e-16
## 
## Call:
## lm(formula = charges ~ age + bmi, data = ins_nonsmoker_child_under30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3255.8 -2178.9 -1528.4  -664.9 22367.6 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -2835.49    2564.04  -1.106    0.270    
## age           245.27      26.07   9.408   <2e-16 ***
## bmi            79.79      96.01   0.831    0.407    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4978 on 280 degrees of freedom
## Multiple R-squared:  0.2481, Adjusted R-squared:  0.2427 
## F-statistic: 46.19 on 2 and 280 DF,  p-value: < 2.2e-16

Dari kedua ringkasan tersebut, saya memutuskan untuk menggunakan regresi linier dengan 1 variabel (Age) karena memiliki nilai R-Squared yang lebih baik.

Jadi persamaannya akan seperti ini:

-884.08 + (247.85 * AGE)

1.3.5.8 Kategori - 8

Tidak Merokok, Memiliki anak, BMI diatas 30.

Tampilan grafik Age vs Charges dapat didekati dengan menggunakan regresi linier.

BMI vs Charges terlihat memiliki korelasi yang tidak teratur.

## 
## Call:
## lm(formula = charges ~ age, data = ins_nonsmoker_child_over30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3138.6 -2283.0 -1647.7  -746.8 24235.0 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -2161.36    1041.35  -2.076   0.0387 *  
## age           282.54      24.23  11.660   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5250 on 320 degrees of freedom
## Multiple R-squared:  0.2982, Adjusted R-squared:  0.296 
## F-statistic:   136 on 1 and 320 DF,  p-value: < 2.2e-16
## 
## Call:
## lm(formula = charges ~ age + bmi, data = ins_nonsmoker_child_over30)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3320.7 -2278.4 -1636.0  -711.3 24252.0 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -923.87    2648.40  -0.349    0.727    
## age           283.07      24.28  11.658   <2e-16 ***
## bmi           -35.83      70.50  -0.508    0.612    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5256 on 319 degrees of freedom
## Multiple R-squared:  0.2988, Adjusted R-squared:  0.2944 
## F-statistic: 67.95 on 2 and 319 DF,  p-value: < 2.2e-16

Dari kedua ringkasan tersebut, saya memutuskan untuk menggunakan regresi linier dengan 1 variabel (umur) karena memiliki nilai R-Squared yang lebih baik.

Jadi persamaannya akan seperti ini:

-2161.36 + (282.54 * AGE)

1.3.6 Prediksi Harga Asuransi

Dari pengelompokan persamaan, saya membuat fungsi untuk memprediksi muatan. Fungsinya terlihat seperti:

Dan hasil prediksi saya terlihat pada tabel di bawah ini

Root Mean Square Error dari prediksi saya:

## [1] 4439.137

Nilai kesalahan rata-rata dari prediksi saya adalah tentang plus minus 4437.56

The Mean Absolute Percent Error dari prediksi saya:

## [1] 0.2669668

Rata-rata persentase kesalahan prediksi saya adalah 26.7%

2 ANOVA/MANOVA

Suatu perusahaan di Amerika Serikat ingin mempekerjakan seseorang dari luar Amerika Serikat untuk posisi teknis, mereka perlu mengajukan aplikasi ke pemerintah Amerika Serikat untuk mendapatkan kartu hijau atau visa bagi pelamar asing. Untuk menunjukkan ekuitas bagi karyawan AS dan non-AS, perusahaan perlu menyatakan seberapa banyak mereka bersedia membayar karyawan ketika mereka mengajukan permohonan visa atau kartu hijau. Sementara itu, mereka perlu memberikan jumlah rata-rata, yang disebut “prevailing wage” seorang karyawan dengan keterampilan dan latar belakang serupa biasanya dibayar untuk posisi yang sama.

Perbedaan antara upah yang dibayar dan upah yang berlaku dapat menunjukkan apakah perusahaan AS bersedia membayar lebih banyak gaji kepada karyawan non-AS. Gaji lebih banyak untuk calon karyawan asing akan menarik. Selain itu, perlu diperhatikan bahwa untuk area dan pekerjaan yang berbeda, gaji dapat menunjukkan perbedaan. Oleh karena itu perlu untuk mencari tahu hubungan antara gaji, area dan posisi dapat membantu karyawan non-AS untuk memilih pekerjaan di AS.

Berdasarkan klasifikasi VISA yang mereka miliki disimpulkan bahwa ada lima jenis yang berbeda: “green card”, “H-1B”, “H-1B1 Chile”, “H- 1B1 Singapore” dan “E-3 Australia”. Untuk projek ini, silahkan anda memilih kelas VISA “H-1B” untuk melakukan data mentah pelamar yang berpenduduk tetap tahun 2018 atau 2019. Kalian dapat mendwonload Data asli yang dikumpulkan oleh Kantor Sertifikasi Tenaga Kerja Asing Departemen Tenaga Kerja AS

Jawab

Saya hanya menggunakan 500 data teratas dari dataset yang ada.

## # A tibble: 6 x 260
##   CASE_NUMBER CASE_STATUS CASE_SUBMITTED      DECISION_DATE      
##   <chr>       <chr>       <dttm>              <dttm>             
## 1 I-200-1609~ WITHDRAWN   2016-04-08 00:00:00 2019-04-30 00:00:00
## 2 I-203-1718~ WITHDRAWN   2017-07-14 00:00:00 2019-05-13 00:00:00
## 3 I-203-1722~ WITHDRAWN   2017-08-23 00:00:00 2019-04-30 00:00:00
## 4 I-203-1735~ WITHDRAWN   2017-12-22 00:00:00 2019-08-20 00:00:00
## 5 I-203-1800~ WITHDRAWN   2018-01-10 00:00:00 2019-04-15 00:00:00
## 6 I-200-1815~ WITHDRAWN   2018-05-30 00:00:00 2019-08-08 00:00:00
## # ... with 256 more variables: ORIGINAL_CERT_DATE <dttm>, VISA_CLASS <chr>,
## #   JOB_TITLE <chr>, SOC_CODE <chr>, SOC_TITLE <chr>, FULL_TIME_POSITION <chr>,
## #   PERIOD_OF_EMPLOYMENT_START_DATE <chr>, PERIOD_OF_EMPLOYMENT_END_DATE <chr>,
## #   TOTAL_WORKER_POSITIONS <chr>, NEW_EMPLOYMENT <chr>,
## #   CONTINUED_EMPLOYMENT <chr>, CHANGE_PREVIOUS_EMPLOYMENT <chr>,
## #   NEW_CONCURRENT_EMPLOYMENT <chr>, CHANGE_EMPLOYER <chr>,
## #   AMENDED_PETITION <chr>, EMPLOYER_NAME <chr>, EMPLOYER_BUSINESS_DBA <chr>,
## #   EMPLOYER_ADDRESS1 <chr>, EMPLOYER_ADDRESS2 <chr>, EMPLOYER_CITY <chr>,
## #   EMPLOYER_STATE <chr>, EMPLOYER_POSTAL_CODE <chr>, EMPLOYER_COUNTRY <chr>,
## #   EMPLOYER_PROVINCE <chr>, EMPLOYER_PHONE <chr>, EMPLOYER_PHONE_EXT <chr>,
## #   NAICS_CODE <chr>, AGENT_REPRESENTING_EMPLOYER <chr>,
## #   AGENT_ATTORNEY_LAW_FIRM_BUSINESS_NAME <chr>, AGENT_ATTORNEY_ADDRESS1 <chr>,
## #   AGENT_ATTORNEY_ADDRESS2 <chr>, AGENT_ATTORNEY_CITY <chr>,
## #   AGENT_ATTORNEY_STATE <chr>, AGENT_ATTORNEY_POSTAL_CODE <chr>,
## #   AGENT_ATTORNEY_COUNTRY <chr>, AGENT_ATTORNEY_PROVINCE <chr>,
## #   AGENT_ATTORNEY_PHONE <chr>, AGENT_ATTORNEY_PHONE_EXT <chr>,
## #   STATE_OF_HIGHEST_COURT <chr>, NAME_OF_HIGHEST_STATE_COURT <chr>,
## #   WORKSITE_WORKERS_1 <dbl>, SECONDARY_ENTITY_1 <chr>,
## #   SECONDARY_ENTITY_BUSINESS_NAME_1 <chr>, WORKSITE_ADDRESS1_1 <chr>,
## #   WORKSITE_ADDRESS2_1 <chr>, WORKSITE_CITY_1 <chr>, WORKSITE_COUNTY_1 <chr>,
## #   WORKSITE_STATE_1 <chr>, WORKSITE_POSTAL_CODE_1 <chr>,
## #   WAGE_RATE_OF_PAY_FROM_1 <chr>, WAGE_RATE_OF_PAY_TO_1 <chr>,
## #   WAGE_UNIT_OF_PAY_1 <chr>, PREVAILING_WAGE_1 <chr>, PW_UNIT_OF_PAY_1 <chr>,
## #   PW_TRACKING_NUMBER_1 <chr>, PW_WAGE_LEVEL_1 <chr>, PW_OES_YEAR_1 <chr>,
## #   PW_OTHER_SOURCE_1 <chr>, `PW_NON-OES_YEAR_1` <dbl>,
## #   PW_SURVEY_PUBLISHER_1 <dbl>, PW_SURVEY_NAME_1 <chr>,
## #   WORKSITE_WORKERS_2 <dbl>, SECONDARY_ENTITY_2 <chr>,
## #   SECONDARY_ENTITY_BUSINESS_NAME_2 <chr>, WORKSITE_ADDRESS1_2 <chr>,
## #   WORKSITE_ADDRESS2_2 <chr>, WORKSITE_CITY_2 <chr>, WORKSITE_COUNTY_2 <chr>,
## #   WORKSITE_STATE_2 <chr>, WORKSITE_POSTAL_CODE_2 <chr>,
## #   WAGE_RATE_OF_PAY_FROM_2 <chr>, WAGE_RATE_OF_PAY_TO_2 <chr>,
## #   WAGE_UNIT_OF_PAY_2 <chr>, PREVAILING_WAGE_2 <chr>, PW_UNIT_OF_PAY_2 <chr>,
## #   PW_TRACKING_NUMBER_2 <chr>, PW_WAGE_LEVEL_2 <chr>, PW_OES_YEAR_2 <chr>,
## #   PW_OTHER_SOURCE_2 <chr>, `PW_NON-OES_YEAR_2` <dbl>,
## #   PW_SURVEY_PUBLISHER_2 <dbl>, PW_SURVEY_NAME_2 <chr>,
## #   WORKSITE_WORKERS_3 <dbl>, SECONDARY_ENTITY_3 <chr>,
## #   SECONDARY_ENTITY_BUSINESS_NAME_3 <chr>, WORKSITE_ADDRESS1_3 <chr>,
## #   WORKSITE_ADDRESS2_3 <chr>, WORKSITE_CITY_3 <chr>, WORKSITE_COUNTY_3 <chr>,
## #   WORKSITE_STATE_3 <chr>, WORKSITE_POSTAL_CODE_3 <dbl>,
## #   WAGE_RATE_OF_PAY_FROM_3 <chr>, WAGE_RATE_OF_PAY_TO_3 <chr>,
## #   WAGE_UNIT_OF_PAY_3 <chr>, PREVAILING_WAGE_3 <dbl>, PW_UNIT_OF_PAY_3 <chr>,
## #   PW_TRACKING_NUMBER_3 <lgl>, PW_WAGE_LEVEL_3 <chr>, PW_OES_YEAR_3 <lgl>,
## #   PW_OTHER_SOURCE_3 <lgl>, ...
## # A tibble: 304 x 4
##    CASE_STATUS VISA_CLASS JOB_TITLE                          EMPLOYER_CITY 
##    <chr>       <chr>      <chr>                              <chr>         
##  1 WITHDRAWN   H-1B       ASSOCIATE CREATIVE DIRECTOR        NEW YORK      
##  2 WITHDRAWN   H-1B       GLOBAL BRAND SUPERVISOR            NEW YORK      
##  3 WITHDRAWN   H-1B       DIRECTOR OF BUSINESS DEVELOPMENT   EL SEGUNDO    
##  4 WITHDRAWN   H-1B       HEAD OF BUSINESS DEVELOPMENT       SAN FRANCISCO 
##  5 WITHDRAWN   H-1B       ACCOUNT DIRECTOR, SOCIAL MEDIA     LOS ANGELES   
##  6 WITHDRAWN   H-1B       PRODUCT MARKETING MANAGER          FREMONT       
##  7 WITHDRAWN   H-1B       ASSOCIATE ACCOUNT STRATEGY MANAGER CHICAGO       
##  8 WITHDRAWN   H-1B       SENIOR MANAGER, LOYALTY            ALAMEDA       
##  9 WITHDRAWN   H-1B       PROMOTIONS & MARKETING MANAGER     LOMBARD       
## 10 WITHDRAWN   H-1B       ENGAGEMENT MARKETING ASSOCIATE     SALT LAKE CITY
## # ... with 294 more rows