Karena semua pernah dari Nol, maka berani kotor error itu baik. Jadikan text editor sebagai kanvasmu, selamat berkarya.

1 Sumber Data

Pada analisis ini data yang digunakan berasal dari United States Departement of Agriculture (USDA Food Composition Databases)

2 Eksplorasi Data

2.1 Cek Direktori

Sebelum melakukan analisis terlebih dahulu cek direktori penyimpanan projek yang akan dilakukan kedalam satu direktori penyimpanan.

2.2 Input data

Input data.csv file USDA ke dalam Rstudio.

foodcomposition <- read.csv("data_input/USDA.csv")

2.3 Garis Besar Data

Lihat terlebih dahulu garis besar data yang dimiliki, untuk memudahkan dalam eksplorasi dan analisa data.

head(foodcomposition, 8)
##     ID              Description Calories Protein TotalFat Carbohydrate
## 1 1001         BUTTER,WITH SALT      717    0.85    81.11         0.06
## 2 1002 BUTTER,WHIPPED,WITH SALT      717    0.85    81.11         0.06
## 3 1003     BUTTER OIL,ANHYDROUS      876    0.28    99.48         0.00
## 4 1004              CHEESE,BLUE      353   21.40    28.74         2.34
## 5 1005             CHEESE,BRICK      371   23.24    29.68         2.79
## 6 1006              CHEESE,BRIE      334   20.75    27.68         0.45
## 7 1007         CHEESE,CAMEMBERT      300   19.80    24.26         0.46
## 8 1008           CHEESE,CARAWAY      376   25.18    29.20         3.06
##   Sodium SaturatedFat Cholesterol Sugar Calcium Iron Potassium VitaminC
## 1    714       51.368         215  0.06      24 0.02        24        0
## 2    827       50.489         219  0.06      24 0.16        26        0
## 3      2       61.924         256  0.00       4 0.00         5        0
## 4   1395       18.669          75  0.50     528 0.31       256        0
## 5    560       18.764          94  0.51     674 0.43       136        0
## 6    629       17.410         100  0.45     184 0.50       152        0
## 7    842       15.259          72  0.46     388 0.33       187        0
## 8    690       18.584          93    NA     673 0.64        93        0
##   VitaminE VitaminD
## 1     2.32      1.5
## 2     2.32      1.5
## 3     2.80      1.8
## 4     0.25      0.5
## 5     0.26      0.5
## 6     0.24      0.5
## 7     0.21      0.4
## 8       NA       NA
tail(foodcomposition, 8)
##         ID                                        Description Calories
## 7051 44259  PUDDINGS,ALL FLAVORS XCPT CHOC,LO CAL,REG,DRY MIX      351
## 7052 44260 PUDDINGS,ALL FLAVORS XCPT CHOC,LO CAL,INST,DRY MIX      350
## 7053 48052                                 VITAL WHEAT GLUTEN      370
## 7054 80200                                      FROG LEGS,RAW       73
## 7055 83110                                    MACKEREL,SALTED      305
## 7056 90240                         SCALLOP,(BAY&SEA),CKD,STMD      111
## 7057 90560                                          SNAIL,RAW       90
## 7058 93600                                   TURTLE,GREEN,RAW       89
##      Protein TotalFat Carbohydrate Sodium SaturatedFat Cholesterol Sugar
## 7051    1.60     0.10        86.04   1765        0.018           0   2.9
## 7052    0.81     0.90        84.66   4250        0.099           0   0.9
## 7053   75.16     1.85        13.79     29        0.272           0   0.0
## 7054   16.40     0.30         0.00     58        0.076          50   0.0
## 7055   18.50    25.10         0.00   4450        7.148          95   0.0
## 7056   20.54     0.84         5.41    667        0.218          41   0.0
## 7057   16.10     1.40         2.00     70        0.361          50   0.0
## 7058   19.80     0.50         0.00     68        0.127          50   0.0
##      Calcium Iron Potassium VitaminC VitaminE VitaminD
## 7051      49 0.05        18        0     0.05      0.0
## 7052     143 0.38        30        0     0.08      0.0
## 7053     142 5.20       100        0     0.00      0.0
## 7054      18 1.50       285        0     1.00      0.2
## 7055      66 1.40       520        0     2.38     25.2
## 7056      10 0.58       314        0     0.00      0.0
## 7057      10 3.50       382        0     5.00      0.0
## 7058     118 1.40       230        0     0.50      0.0

Command head () & tail () digunakan untuk melihat baris awal dan akhir dari file data csv. Pada tabel diatas terlihat delapan baris awal dari data file USDA.

2.4 Struktur Data

Dalam memulai sebuah analisis, perlu dipahami stuktur data yang dimiliki. Mulai dari dataframe, banyaknya observasi data, variabel dan tipe data.

str (foodcomposition)
## 'data.frame':    7058 obs. of  16 variables:
##  $ ID          : int  1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 ...
##  $ Description : Factor w/ 7054 levels "ABALONE,MIXED SPECIES,RAW",..: 1303 1302 1298 2303 2304 2305 2306 2307 2308 2309 ...
##  $ Calories    : int  717 717 876 353 371 334 300 376 403 387 ...
##  $ Protein     : num  0.85 0.85 0.28 21.4 23.24 ...
##  $ TotalFat    : num  81.1 81.1 99.5 28.7 29.7 ...
##  $ Carbohydrate: num  0.06 0.06 0 2.34 2.79 0.45 0.46 3.06 1.28 4.78 ...
##  $ Sodium      : int  714 827 2 1395 560 629 842 690 621 700 ...
##  $ SaturatedFat: num  51.4 50.5 61.9 18.7 18.8 ...
##  $ Cholesterol : int  215 219 256 75 94 100 72 93 105 103 ...
##  $ Sugar       : num  0.06 0.06 0 0.5 0.51 0.45 0.46 NA 0.52 NA ...
##  $ Calcium     : int  24 24 4 528 674 184 388 673 721 643 ...
##  $ Iron        : num  0.02 0.16 0 0.31 0.43 0.5 0.33 0.64 0.68 0.21 ...
##  $ Potassium   : int  24 26 5 256 136 152 187 93 98 95 ...
##  $ VitaminC    : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ VitaminE    : num  2.32 2.32 2.8 0.25 0.26 0.24 0.21 NA 0.29 NA ...
##  $ VitaminD    : num  1.5 1.5 1.8 0.5 0.5 0.5 0.4 NA 0.6 NA ...

2.5 Summary

Selain melihat dan memahami stuktur data, eksplorasi data dapat juga dilakukan dengan melihat summary (ringkasan) dari file data yang ada.

summary(foodcomposition)
##        ID       
##  Min.   : 1001  
##  1st Qu.: 8387  
##  Median :13294  
##  Mean   :14260  
##  3rd Qu.:18337  
##  Max.   :93600  
##                 
##                                                        Description  
##  BEEF,CHUCK,UNDER BLADE CNTR STEAK,BNLESS,DENVER CUT,LN,0" FA:   2  
##  CAMPBELL,CAMPBELL'S SEL MICROWAVEABLE BOWLS,HEA             :   2  
##  OIL,INDUSTRIAL,PALM KERNEL (HYDROGENATED),CONFECTION FAT    :   2  
##  POPCORN,OIL-POPPED,LOFAT                                    :   2  
##  ABALONE,MIXED SPECIES,RAW                                   :   1  
##  ABALONE,MXD SP,CKD,FRIED                                    :   1  
##  (Other)                                                     :7048  
##     Calories        Protein         TotalFat       Carbohydrate   
##  Min.   :  0.0   Min.   : 0.00   Min.   :  0.00   Min.   :  0.00  
##  1st Qu.: 85.0   1st Qu.: 2.29   1st Qu.:  0.72   1st Qu.:  0.00  
##  Median :181.0   Median : 8.20   Median :  4.37   Median :  7.13  
##  Mean   :219.7   Mean   :11.71   Mean   : 10.32   Mean   : 20.70  
##  3rd Qu.:331.0   3rd Qu.:20.43   3rd Qu.: 12.70   3rd Qu.: 28.17  
##  Max.   :902.0   Max.   :88.32   Max.   :100.00   Max.   :100.00  
##  NA's   :1       NA's   :1       NA's   :1        NA's   :1       
##      Sodium         SaturatedFat     Cholesterol          Sugar       
##  Min.   :    0.0   Min.   : 0.000   Min.   :   0.00   Min.   : 0.000  
##  1st Qu.:   37.0   1st Qu.: 0.172   1st Qu.:   0.00   1st Qu.: 0.000  
##  Median :   79.0   Median : 1.256   Median :   3.00   Median : 1.395  
##  Mean   :  322.1   Mean   : 3.452   Mean   :  41.55   Mean   : 8.257  
##  3rd Qu.:  386.0   3rd Qu.: 4.028   3rd Qu.:  69.00   3rd Qu.: 7.875  
##  Max.   :38758.0   Max.   :95.600   Max.   :3100.00   Max.   :99.800  
##  NA's   :84        NA's   :301      NA's   :288       NA's   :1910    
##     Calcium             Iron           Potassium          VitaminC       
##  Min.   :   0.00   Min.   :  0.000   Min.   :    0.0   Min.   :   0.000  
##  1st Qu.:   9.00   1st Qu.:  0.520   1st Qu.:  135.0   1st Qu.:   0.000  
##  Median :  19.00   Median :  1.330   Median :  250.0   Median :   0.000  
##  Mean   :  73.53   Mean   :  2.828   Mean   :  301.4   Mean   :   9.436  
##  3rd Qu.:  56.00   3rd Qu.:  2.620   3rd Qu.:  348.0   3rd Qu.:   3.100  
##  Max.   :7364.00   Max.   :123.600   Max.   :16500.0   Max.   :2400.000  
##  NA's   :136       NA's   :123       NA's   :409       NA's   :332       
##     VitaminE          VitaminD       
##  Min.   :  0.000   Min.   :  0.0000  
##  1st Qu.:  0.120   1st Qu.:  0.0000  
##  Median :  0.270   Median :  0.0000  
##  Mean   :  1.488   Mean   :  0.5769  
##  3rd Qu.:  0.710   3rd Qu.:  0.1000  
##  Max.   :149.400   Max.   :250.0000  
##  NA's   :2720      NA's   :2834

Dari summary diatas, kita bisa mengetahui banyak informasi, misalnya pada Variable ID. Terdapat informasi bahwa id minimum pada data foodcompostion adalah 1001 dan id tertinggi nya adalah 93600 dengan mean dan median masing - masing yaitu 13294 dan 18337.

Sekarang lihat pada variabel lainnya, kita ambil contoh pada variabel Calories. Dari summary tersebut kita dapatkan informasi bahwa nilai minimum calories pada bernilai 0.0 dengan Kuartil pertama (Kuartil Atas) dari keseluruhan data Calories yaitu 85.0 dan Kuartil Bawah 331.0.

Dalam pembacaan informasi data yang kita punya saat ini, kita juga bisa mengetahui secara lebih rinci dari masing-masing variabel data. Contohnya bila kita ingin mengetahui rincian dari variabel data Sodium, maka kita jalankan perintah seperti dibawah ini ;

unique(foodcomposition$Sodium)
##    [1]   714   827     2  1395   560   629   842   690   621   700   604
##   [12]   364   344   330   406   321   965  1116   800   600   819   336
##   [23]   536   627   415   619   652   628   334  1529  1602   534   876
##   [34]    84   125  1200  1809   192   753  1671  1428  1370   966  1284
##   [45]  1552  1625    41    40    34    38     8    89    80    54    48
##   [56]    57    79   181   122    66    62    25   102    78    43    49
##   [67]    47    52    59    44    58    42    53   105     3   371   535
##   [78]   549  2280   517   127   106   115    60    61    50    17   111
##   [89]    95   968  1079    46    70    77    65   142   166    67   207
##  [100]   124   155   297   145   523   548  1156  1238   135   146   138
##  [111]   141   151    11  1696   346   515   368  3780   685   132   493
##  [122]  1131   655   617   612    21   133   158  1280    71   725  1150
##  [133]   702  1638  1705  1298  1499  1586    72    45    55   100   196
##  [144]   776   576  1587   329   250   129   199  1808   751   704    81
##  [155]    68   162    94   164   110    92   696  1272  3663    16    76
##  [166]    23    18   160    83  1640    10   277   211    35   168    20
##  [177]   208    88    27    13    73   452    30     5    26   148    24
##  [188]     4  1135 38758     9  2964   314    31  8068    14   227   260
##  [199]   173    36     0   633   750   788  1133  1000   863   711   838
##  [210]  1074   868   955   568   497   504   353   943  1018   836   589
##  [221]   658   734     1   853  1041   786   450   545   150   657   785
##  [232]   615    28   833   590   630   654   646   580   733  1129   897
##  [243]  1094  1120   673   864     6     7   879   886   755   829   729
##  [254]   900   670  1102   848   650  1265  1004   284    86   292    82
##  [265]    91    63   581    56   113    69    74   287    75   295    87
##  [276]    85    97    93    32    64   317    90    99    96   275   116
##  [287]   104   269   114   112   118   279    98   276   288   320    51
##  [298]   101   140    37    33   503   697   467   850   554   567   397
##  [309]   437   678   680   482   837   323   108   559   557   424   518
##  [320]   532   457   446   451   271   251   256   661   341   417   381
##  [331]   337   584   347   411   345   610   799   632   909   120   117
##  [342]   970   706   709   831   400   372   653   516   693   618   354
##  [353]   306   370   484   325   506  1558   303   524   603   573   773
##  [364]   732   637   740   301   778   716   816   731   635   391   739
##  [375]   359   672   338 26000 24000  8408 23875   694  8031  6722  4957
##  [386]  3712   460  3833 11588  4843  4152   570  6580  4186  5356   577
##  [397]  4392  5730  3643  1164  1145   651   847   538   185   377   328
##  [408]   373  2643   198   143   156  1615  2733   215   430  7851   501
##  [419]   383   231  1778   187   366   331   420   416   565   272   387
##  [430]   362   385   369   408   384   273   376   367   363   335   322
##  [441]   318   405   425   352   355   327   230   184   669   195   508
##  [452]   458   525   475   483   433   407   542   605   645   444   611
##  [463]   442   210   698   722   710   664   659   343   351   402   487
##  [474]   349   167   254   388   305   290   380   238   392   226   339
##  [485]   264   365   423   398   319   253   350   382   401   326   454
##  [496]  1325   403   356   312   229   194   386   190  2036   308   282
##  [507]   285   719   844   867   625   656   688   781   813   234  3202
##  [518]   299   361   736   707   555   828   419   357    22  5053  5203
##  [529]  4090  2590   980  1338 17152   435  1067  2002  2071   409   587
##  [540]   390   441  1334  1240  1297  1080   960  1184  1071   846  1160
##  [551]  1112  1082  1059  1235   953  1055  1037  1078  1365  1203  1304
##  [562]  1245   830  1320   904   930  1374  1225   860  1329  1117   820
##  [573]  1289   772  1293  1246  1484   981  1523  1653  1127   636   749
##  [584]   805  1140  1449  2260  2010  1013   911  1173  1300  1015  1114
##  [595]   928   586   969  1322  1207  1182  1220  1033  1179  1151   977
##  [606]  1159  1118  1438  1242  1167  1249  1348  1248  1214  1084  1073
##  [617]  1105  1226  1318  1275  1309  1095  1231  1826  1976   821  1007
##  [628]   967  1046  1022  1036  1424  1430   988  1025   927  1143   974
##  [639]  1039  1142  1188  1196  1070  1136  1213  1077   919  1180  1192
##  [650]  1177  1201  1288   679   946  1162  1342   954  1431  1096  1056
##  [661]  1381  1369  1032  1858   994   796   540   880   507  1330   724
##  [672]   623  1540  1483   585  1420   982  1010  1890  1034   936  1040
##  [683]  1087   883   807   852  1090   922   752   910   593   665   258
##  [694]   634   459   676   754   742   571   774   723   309   763   715
##  [705]   431   541   825   513   889   561   462   186   563   638   871
##  [716]   552  1050   188  1679  1219    15   170   161    19   278   453
##  [727]   599   485   667   223   126   233   225   219   491   374   479
##  [738]   648   465  1310   533   499   614   509   434   699   469   527
##  [749]   607   556   701   240   449   640   236   432   550   574   766
##  [760]   464   823   473   394   613   204   165   418   206  1764  1557
##  [771]  1518  1930   472   759   241   466   455   461   795   726   456
##  [782]   246   476   500   488   261   249   247   252   268   448   490
##  [793]   579   235   244   242    12   738   438   649   471   375   298
##  [804]   494   520   443   477   304   521   572   478   492   760   597
##  [815]    29    NA   735  1556   191   121   153   107   109  2310   987
##  [826]  2099  1409  1546  1500  1255   941  2695  1386  1088  1063  1269
##  [837]  1187  1516  1327   213   505   624  1072  1250   973  1278  1385
##  [848]  1276  1068  1155  1210  1038   413   594   378   358  1016   209
##  [859]   205  2193  2073  2428  1170  1060  1237  1390  1335   861   835
##  [870]   986  1267  1223  1193  1141  1045  1163  1098   893   809   895
##  [881]   677   616   870   881   839   779  1308  1099   990  1126  1011
##  [892]   964  1069  1101  1212  1181   945  1389   841   801   826   737
##  [903]   810   744   243   154   237   232   239   176   179   163   130
##  [914]   342   333   217   257   172  2095   439  1578   480   332   529
##  [925]    39   245   221   134   551   543   546   224   149   193   302
##  [936]   566  1048   872   764   296   289   265   259   324   262   255
##  [947]   270   412   286   280   281   248   263   790   399   875  1208
##  [958]  1091   811   266   426  2853   307   588   410   393   428  2541
##  [969]   182  2253  1217  1134  1006  2790   885  1258  1439   274   131
##  [980]   103   180   136  3668   481   218  7027   348   421   918   379
##  [991]   784   414   396  1019   293   395   539   486   947   777   705
## [1002]   177   591   601  1202  2000   203   691   212   119   178   422
## [1013]   522  1465   888  3728  1005  5637  5586  5689  2873   294   569
## [1024]   447   575  3333   222   313   708   530   642   758   671   859
## [1035]  1463   717   389   682   666   695   564   519   609   429   157
## [1046]   942   999   631   817   720   470   660   553   592   583  1405
## [1057]  1283   596   687   558   147   436   468   913   598   899  1044
## [1068]   887   865   901  1089   427   316   495   767  1419   906   544
## [1079]   765   832   686   511 10600  7893 27360  1759   730  1111   315
## [1090]   216   440   311   200   404  1532  1680  1295   898   528   882
## [1101]   891  2182   300   174   878  1410  1360   663   745   866   510
## [1112]   228   445  1148   283  2081   952   950   741  1058  1818  1357
## [1123]  1553   787   862   152  1429   123  1441   159 26050   183  1332
## [1134]   267   189  1531  2667  1488  1003   643   291   602  2751   849
## [1145]   896   884  1715  1247  1319  1866  1270   792  1840   531   771
## [1156]   202   854   175  1647   983   824   220  2850   310  1108  2285
## [1167]  1103   939   932  1257   689   814  1745  1528  1600   957  1020
## [1178]   743  1209   780   789  1674   626  1770  1345   905   996  1030
## [1189]  2962  9690   856  1435  2838  3326  1765  4250  4450

Dari tampilan data diatas kita bisa mengetahui dari 1 sampai 7058 observasi berapa nilai dari masing-masing data Sodium, misalnya 5 observasi pertama pada data diatas, didapatkan nilai dari sodium yaitu 704, 827, 2, 1395 dan 560. Dari data sodium diatas memang tidak bisa ditampilkan semua karena ada batas maximum dari program R untuk melakukan print data.

3 Analisa Data

Setelah membaca dan memahami data yang ada, saatnya kita lakukan analisa.

Berdasarkan ringkasan/summary data. Urutan/observasi ke berapa nilai tertinggi dari Sodium berdasarkan data USDA?

which.max(foodcomposition$Sodium)
## [1] 265
foodcomposition$Sodium[265]
## [1] 38758

Dan didapatkan bahwa, nilai tertinggi dari Sodium terletak di observasi ke 265. Dengan nilai kandungan Sodium sebesar 38758.

Bahan makanan apa yang memiliki kandungan sodium tertinggi tersebut??

foodcomposition$Description[265]
## [1] SALT,TABLE
## 7054 Levels: ABALONE,MIXED SPECIES,RAW ... ZWIEBACK

Dari command diatas, kita bisa mengetahui bahwa SALT adalah bahan makanan dengan kandungan sodium sebesar 38758.

Kemudian, kita ingin melihat bahan makanan apa saja yang memiliki komposisi lebih dari nilai rata-rata yang kita tentukan. Misalnya lebih dari 10000. Maka kita akan ambil subset dari ‘foodcomposition’ dengan nama variabel baru HighSodium.

HighSodium = subset(foodcomposition, Sodium >= 10000) 

Berapa banyak observasi/variable bahan makanan yang memiliki tingkat sodium diatas 10000??

nrow(HighSodium)
## [1] 10
HighSodium$Description
##  [1] SALT,TABLE                                             
##  [2] SOUP,BF BROTH OR BOUILLON,PDR,DRY                      
##  [3] SOUP,BEEF BROTH,CUBED,DRY                              
##  [4] SOUP,CHICK BROTH OR BOUILLON,DRY                       
##  [5] SOUP,CHICK BROTH CUBES,DRY                             
##  [6] GRAVY,AU JUS,DRY                                       
##  [7] ADOBO FRESCO                                           
##  [8] LEAVENING AGENTS,BAKING PDR,DOUBLE-ACTING,NA AL SULFATE
##  [9] LEAVENING AGENTS,BAKING SODA                           
## [10] DESSERTS,RENNIN,TABLETS,UNSWTND                        
## 7054 Levels: ABALONE,MIXED SPECIES,RAW ... ZWIEBACK

Dari perintah (command) diatas, akan muncul data sebanyak 10 variabel bahan makanan yang memiliki tingkat sodium diatas 10000.

Tentukan jenis bahan makanan yang memiliki kandungan sodium dari data yang ada dan berapa banyak kandungan sodium pada bahan makanan tersebut??

match("CAVIAR", foodcomposition$Description)
## [1] 4154
foodcomposition$Sodium [4154]
## [1] 1500

Salah satu jenis bahan makanan yang memiliki sodium adalah CAVIAR. Didapatkan informasi data bahwa, CAVIAR berada pada urutan ke 4154 dengan tingkat Sodium sebesar 1500.

Kita juga bisa menggunakan langkah/perintah lain dengan cara :

foodcomposition$Sodium[match("CAVIAR", foodcomposition$Description)]
## [1] 1500

Lalu bila ingin mengetahui summary/ringkasan dari variabel Sodium. Maka dapat menggunakan perintah/command ;“summary(foodcomposition$Sodium)”

summary(foodcomposition$Sodium)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##     0.0    37.0    79.0   322.1   386.0 38758.0      84

Dari data diatas kita bisa mengetahui nilai sebaran Mean, Median dari Sodium. Selanjutnya, bisa dilakukan penghitungan standar deviasi, namun pada data summary sodium tersebut masih terdapat data dengan keterangan NA’s yang artinya data tidak diketahui maka selanjutnya untuk mengetahui standar deviasi dari sodium kita akan menghilangkan data NA untuk dilakukan penghitungan ulang.

sd(foodcomposition$Sodium, na.rm = TRUE)
## [1] 1045.417

Dari penghitungan standar deviasi setelah menghilangkan data yang tidak diketahui maka didapatkan bahwa Standar Deviasi dari Sodium adalah 1045.417.

3.1 Menambahkan Variabel Baru

HighSodium=as.numeric(foodcomposition$Sodium > 
  mean(foodcomposition$Sodium, na.rm = TRUE))
str(HighSodium)
##  num [1:7058] 1 1 0 1 1 1 1 1 1 1 ...

Masukkan Variabel HighSodium dan Variabel lainnya seperti HighCarbs, High Protein, dan High Fat ke dalam struktur data foodcomposition :

foodcomposition$HighSodium=as.numeric(foodcomposition$Sodium >
  mean(foodcomposition$Sodium, na.rm = TRUE))

foodcomposition$HighCarbs=as.numeric(foodcomposition$Carbohydrate >
  mean(foodcomposition$Carbohydrate, na.rm = TRUE))

foodcomposition$HighProtein=as.numeric(foodcomposition$Protein >
  mean(foodcomposition$Protein, na.rm = TRUE))

foodcomposition$HighFat=as.numeric(foodcomposition$TotalFat>
  mean(foodcomposition$TotalFat, na.rm = TRUE))

str(foodcomposition)
## 'data.frame':    7058 obs. of  20 variables:
##  $ ID          : int  1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 ...
##  $ Description : Factor w/ 7054 levels "ABALONE,MIXED SPECIES,RAW",..: 1303 1302 1298 2303 2304 2305 2306 2307 2308 2309 ...
##  $ Calories    : int  717 717 876 353 371 334 300 376 403 387 ...
##  $ Protein     : num  0.85 0.85 0.28 21.4 23.24 ...
##  $ TotalFat    : num  81.1 81.1 99.5 28.7 29.7 ...
##  $ Carbohydrate: num  0.06 0.06 0 2.34 2.79 0.45 0.46 3.06 1.28 4.78 ...
##  $ Sodium      : int  714 827 2 1395 560 629 842 690 621 700 ...
##  $ SaturatedFat: num  51.4 50.5 61.9 18.7 18.8 ...
##  $ Cholesterol : int  215 219 256 75 94 100 72 93 105 103 ...
##  $ Sugar       : num  0.06 0.06 0 0.5 0.51 0.45 0.46 NA 0.52 NA ...
##  $ Calcium     : int  24 24 4 528 674 184 388 673 721 643 ...
##  $ Iron        : num  0.02 0.16 0 0.31 0.43 0.5 0.33 0.64 0.68 0.21 ...
##  $ Potassium   : int  24 26 5 256 136 152 187 93 98 95 ...
##  $ VitaminC    : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ VitaminE    : num  2.32 2.32 2.8 0.25 0.26 0.24 0.21 NA 0.29 NA ...
##  $ VitaminD    : num  1.5 1.5 1.8 0.5 0.5 0.5 0.4 NA 0.6 NA ...
##  $ HighSodium  : num  1 1 0 1 1 1 1 1 1 1 ...
##  $ HighCarbs   : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ HighProtein : num  0 0 0 1 1 1 1 1 1 1 ...
##  $ HighFat     : num  1 1 1 1 1 1 1 1 1 1 ...

3.2 Summary Table

Untuk mengetahui berapa jumlah variabel baru, contohnya berapa jumlah bahan makanan yang memiliki nilai diatas rata-rata (1) dan berapa jumlah yang memiliki nilai dibawah rata-rata (0) maka dari itu kita buat summary tabel dari variable data set baru yang telah dibuat.

table(foodcomposition$HighSodium)
## 
##    0    1 
## 4884 2090

Maka diketahui ada 4884 yang bernilai (0 - atau dibawah rata-rata) dan 2090 bahan makanan yang bernilai 1 (diatas rata-rata).

Sekarang kita akan lakukan perbandingan berapa jumlah bahan makanan antara HighSodium dan HighFat. Dengan Command :

table(foodcomposition$HighSodium, foodcomposition$HighFat)
##    
##        0    1
##   0 3529 1355
##   1 1378  712

Keterangan :Kolom menandakan High Fat Baris menandakan HighSodium

Dari data diatas bisa didapatkan kesimpulan bahwa bahan makanan dengan HighSodium (diatas rata-rata) dan HighFat berjumlah 712 bahan makanan.

4 Visualisasi Data

Untuk mendapatkan insight dari sebuah analisis data maka dilakukan penyajian data secara visual melalui diagram plot, grafik, chart dan lain sebagainya.

4.1 Diagram Plot

Perbandingan dua variabel Protein dengan Total Fat.

plot(x = foodcomposition$Protein, y =  foodcomposition$TotalFat, 
     main = "Protein Vs Total Fat", 
     xlab = "Protein", ylab = "Total Fat", col="navy")

Dari visualisasi diagram plot antara kandungan protein vs total fat suatu jenis bahan makanan berdasarkan data USDA, dapat diketahui bahwa secara umum jenis makanan yang mengandung total fat antara 0-40 memiliki kandungan protein yang hampir sama yaitu 0-38. Namun ada beberapa jenis bahan makanan yang memiliki kandungan protein tinggi dengan total fat rendah.

4.2 Histogram

Dalam visualisasi data, bisa menggunakan histogram untuk mengetahui distribusi/penyebaran data sehingga dengan demikian didapatkan informasi yang lebih banyak dari data tersebut dan akan memudahkan untuk mendapatkan kesimpulan dari data tersebut.

hist(foodcomposition$VitaminC, xlab = "Vitamin C (mg)", 
     main = "Histogram of Vitamin C", xlim = c(0,100), breaks = 100, 
     col ="yellow")

Dari viasualisasi histogram vitamin C diatas, didapatkan kesimpulan bahwa pada data foodcomposition kadar Vitamin C 0-20mg memiliki frekwensi data hampir 5000, sedangkan kandungan Vitamin C >20-40 mg memiliki frekwensi data dibawah 500.

hist(foodcomposition$VitaminC, xlab = "Vitamin C (mg)", 
     main = "Histogram of Vitamin C", xlim = c(0,100), breaks =2000,
     col ="yellow")

## Boxplot

Boxplot adalah salah satu cara dalam statistik deskriptif untuk menggambarkan secara grafik dari data numeris melalui lima ukuran sebagai berikut: 1. Nilai observasi terkecil 2. Kuartil terendah atau kuartil pertama (Q1), yang memotong 25 % dari data terendah. 3. Median (Q2) atau nilai tengah 4. Kuartil tertinggi atau kuartil ketiga (Q3), yang memotong 25 % dari data tertinggi. 5. Nilai observasi terbesar.

Dalam boxplot juga ditunjukkan, jika ada, nilai outlier dari observasi. Boxplot dapat digunakan untuk menunjukkan perbedaan antara populasi tanpa menggunakan asumsi distribusi statistik yang mendasarinya.

Pada kasus ini kita gambarkan boxplot dari kandungan Karbohidrat dari data foodcompostion.

boxplot(foodcomposition$Carbohydrate, ylab =  "Carbohydrate (gr)", 
        main = "Boxplot of Carbohydrate", col = "blue")

Dari visualisasi diatas didapatkan bahwa bagian utama boxplot adalah kotak berbentuk persegi (Box) yang merupakan bidang yang menyajikan interquartile range (IQR), dimana 50 % dari nilai data pengamatan terletak di sana. Dimana garis yang terdapat pada kotak adalah Q2 (median), dimana 50% data pengamatan lebih kecil atau sama dengan nilai kurang lebih 15gr. Nilai yang berada di atas whisker dinamakan nilai outlier, yang bisa diartikan pada keseluruhan data terdapat kandungan karbohidrat tinggi melebihi 60gr - 100gr.