Agustus 2023

Angkatan Kerja Nasional (Sakernas) 2023 adalah survei yang dilakukan oleh Badan Pusat Statistik (BPS) Indonesia untuk mengumpulkan data mengenai ketenagakerjaan di Indonesia. Tujuan utama dari survei ini adalah untuk menyediakan data yang akurat dan komprehensif tentang berbagai aspek ketenagakerjaan di Indonesia, termasuk tingkat partisipasi angkatan kerja, tingkat pengangguran, jenis pekerjaan, upah, jam kerja, serta karakteristik demografis pekerja seperti usia, jenis kelamin, dan tingkat pendidikan.

Analisis data  survei ini menggunakan materi dari: Introduction to SAS. UCLA: Statistical Consulting Group. from https://stats.oarc.ucla.edu/sas/modules/introduction-to-the-features-of-sas/ (accessed August 22, 2021).

Mengunduh dan menginstal paket

Anda hanya perlu menjalankan perintah install.packages berikut sekali saja. Biarkan perintah ini tetap ada di file R script Anda, namun tambahkan simbol # di depan setiap baris untuk mengomentarinya.

# install.packages("survey")
# install.packages("dplr")
# install.packages("jtools")

Setelah paket diunduh, paket tersebut perlu dimuat. Ini perlu dilakukan pada awal setiap sesi R.

library(survey)
library(dplyr)
library(jtools)

Membaca data ke dalam R

Data Sakernas Agustus 2023 didistribusikan dalam format csv (sakernas_agt_2023_15.csv). Anda dapat menggunakan read.csv() untuk membaca data ke dalam R. Perintahnya akan terlihat seperti ini:

data <- read.csv("sakernas_agt_2023_15.csv")

Memeriksa data yang diimpor dengan menggunakan fungsi head(data)

head(data)

Variabel

Kita akan menggunakan beberapa variabel berbeda dalam contoh analisis ini. Di bawah adalah ringkasan singkat Beberapa variabel yang akan dianalisis termasuk di dalamnya memuat informasi observasi yang mencakup nilai yang benar-benar hilang serta nilai yang ditolak dan tidak diketahui.

K4 - Jenis Kelamin, rentang nilai: 1=Laki-laki 2=Perempuan; tidak ada pengamatan hilang

K5 - Kewarganegaraan, rentang nilai: 1=WNI 2=WNA, tidak ada pengamatan hilang

K9 - Umur, rentang nilai: 15 - 98, tidak ada pengamatan hilang

R6A - Pendidikan tertinggi ditamatkan, rentang nilai: 1=Tidak/belum tamat SD 2=SD/MI/SDLB/Paket A 3=SMP/MTs/SMPLB/Paket B 4=SMA/MA/SMLB/Paket C 5=SMK 6=MAK 7=Diploma I/II/III 8=Diploma IV 9=S1 10=S2 11=S2 Terapan 12=S3, tidak ada pengamatan hilang

R6B_P - Penyelenggara pendidikan, rentang nilai: 1=Negeri 2=Swasta 3=Kedinasan 4=Tidak Tahu, 448593 pengamatan hilang

R9A - bekerja paling sedikit satu jam, rentang nilai: 1=Ya 2=Tidak, tidak ada pengamatan hilang

R18B - jumlah jam kerja biasanya dalam seminggu di pekerjaan atau kegiatan usaha, rentang nilai: 0 - 98

R28A - Seminggu terakhir memiliki lebih dari 1 pekerjaan, rentang nilai: 1=Ya 2=Tidak, 250560 pengamatan hilang

R28C - Jumlah jam kerja biasanya seluruh pekerjaan dalam seminggu, rentang nilai: 0 - 98 (nilai akan sama dengan R18B jikq hanya memiliki satu pekerjaan)

Fungsi svydesign

Sebelum kita memulai analisis, kita perlu menggunakan fungsi svydesign dari paket “survei” yang ditulis oleh Thomas Lumley. Fungsi svydesign memberi tahu R tentang elemen desain dalam survei. Setelah perintah ini dikeluarkan, yang perlu Anda lakukan untuk analisis Anda adalah menggunakan objek yang berisi informasi ini di setiap perintah. Data Sakernas Agustus 20223 dirilis dengan bobot sampel (WIGHTR), variabel PSU (PSU), dan variabel strata (STRATA). Fungsi svydesign terlihat seperti ini:

survey_design <- svydesign(
  id = ~PSU,
  weights = ~WEIGHTR,
  strata = ~STRATA,
  nest = T,
  data = data
)

survey_design
Stratified 1 - level Cluster Sampling design (with replacement)
With (9112) clusters.
svydesign(id = ~PSU, weights = ~WEIGHTR, strata = ~STRATA, nest = T, 
    data = data)

Kita bisa mendapatkan informasi tambahan tentang sampel, seperti jumlah PSU per strata, dengan menggunakan fungsi summary.

summary(survey_design)
Stratified 1 - level Cluster Sampling design (with replacement)
With (9112) clusters.
svydesign(id = ~PSU, weights = ~WEIGHTR, strata = ~STRATA, nest = T, 
    data = data)
Probabilities:
     Min.   1st Qu.    Median      Mean   3rd Qu.      Max. 
0.0001431 0.0028011 0.0059880 0.0093957 0.0113636 0.3333333 
Stratum Sizes: 
           11101 11102 11201 11202 11301 11302 11401 11402 11501 11502 11601 11602 11701 11702 11801 11802 11901 11902
obs          226   883   467   780   488  1024   447   911   384  1163   448   907   453   835   962   865   436  1035
           12001 12002 12101 12102 12201 12202 12301 12302 12401 12402 12501 12502 12601 12602 12701 12702 12801 12802
obs          583   934   493  2466   733  2173   343  2184  1119  1874   545  2151   379  2087  1164  1606  1225  1500
           12901 12902 13001 13002 13101 13102 13201 13202 13301 13302 13401 13402 13501 13502 13601 13602 13701 13702
obs          500  1170   234  1065   622  1923  2248  1422  1280  2107   447  2460   573  2190   777  1747   909  1799
           13801 13802 13901 13902 14001 14002 14101 14102 14201 14202 14301 14302 14401 14402 14501 14502 14601 14602
obs         1075  2002  1098  1847   445  2278  1064  3416  1579  2907   895  2264   574  2249   784  1936   768   968
           14701 14702 14801 14802 14901 14902 15001 15002 15101 15102 15201 15202 15301 15302 15401 15402 15501 15502
obs          436  1082   777   784   539  1085   536   774   423   957   390  1149   345   994   325  1143   620   915
           15601 15602 15701 15702 15801 15802 15901 15902 16101 16102 16201 16202 16301 16302 16401 16402 16501 16502
obs          178  1177   437   947   241  1305   581   954   579   959   305  1373   460  1249   407  1068   159  1292
           16601 16602 16701 16702 16801 16802 16901 16902 17001 17002 17101 17102 17201 17202 17301 17302 17401 17402
obs          287  1327   629  1149   202  1305   318  1336   443  1063   740  2047  1053  1636   472  2174   136  1061
           17501 17502 17601 17602 17701 17702 17801 17802 17901 17902 18101 18102 18201 18202 18301 18302 18401 18402
obs          104  1146   178  1149   182   976   321   962   312   958  1519  1250  1178  1401  2347   789  1667  1456
           18501 18502 18601 18602 18701 18702 18801 18802 18901 18902 19001 19002 19101 19102 19201 19202 19301 19302
obs          946  2020   561  1021   125  1367   437   973   421  1045   840   638  2243  1788  2527  1549  1944  2191
           19401 19402 19501 19502 19601 19602 19701 19702 19801 19802 20101 20102 20201 20301 20302 20401 20402 20501
obs         1914   782  2562   967  2147   583  1041   289   501   912  1720   114  1150   768   457  1096    24  1240
           20601 20602 20701 20702 21101 21102 21201 21202 21301 21302 21401 21402 21501 21502 22101 22201 22202 23101
obs         1143   128   934   347  2572   633   847   445  1611   964   442   756   365   644  1736   769   387  2008
           23201 23202 23301 23302 23401 23402 24101 24102 25101 25201 26101 28101 28102 28201 28202 31101 32101 32102
obs          999   318   716   602  1209   266  1524    65  1881  1397  1470  1678    69  1408    44   870  2398   144
           32201 32202 32301 32302 32401 32402 32501 32502 32601 32602 32701 32702 32801 32802 32901 32902 33001 33002
obs         1166   841  1155   679  2138    95  1494   636  1005   752  1092   525  1202   440  1832   115  1179   562
           33101 33102 33201 33202 33301 33302 33401 33402 33501 33502 33601 33602 33701 33702 33801 33802 33901 33902
obs         2501  1160  2810   939  2482  1258  2342  1289  2602  1198  2763  1211  2534  1114  1862  1487  1135   704
           34001 34002 34101 34102 34201 34202 34301 34302 34401 34402 34501 34502 34601 34602 34701 34702 34801 34802
obs         1574   239  2635   730  2529  1279  2111  1472  2828   782   764  1084   516  1145   639   962  1112   724
           34901 34902 35001 35002 35101 35102 35201 35202 35301 35302 35401 35402 35501 35502 35601 35602 35701 35702
obs         1570   153  1525   329  1715  1851  2188  1602  1685  1941  2486  1114  2194  1523  2708  1030  2940  1125
           35801 35802 35901 35902 36001 36002 36101 36102 36201 36202 36301 36302 36401 36402 36501 36502 36601 36602
obs         2383  1135  3027  1180  1243   612  1537  1770  1552  1702  3201   867  2689  1184  2131    48  1613   245
           36701 36702 36801 36802 36901 36902 37001 37002 37101 37102 37201 37202 37301 37302 37401 37402 37501 37502
obs         1535   330  1101   665   976   657   998   745   600  1025   682  1203   817   980   827  1043  1588   422
           37601 37602 37701 37702 37801 37802 37901 37902 38101 38201 38301 38401 38501 39101 39201 39301 39401 39501
obs          807   822   660   966   968   739   496  1173  2012  2084  1563  2044  1927  1750  1427  2013  1418  2217
           39601 39701 39801 39802 39901 39902 40101 40201 40301 40401 40402 40501 40601 41101 42101 42201 42301 42401
obs         2136  1615  1594    41  1119   189  1106  1580  1388  2019    52  1470  1332  1381  1501  1327  1635  1369
           42501 42601 42701 42801 42901 42902 43101 43201 43301 43302 43401 51101 51102 51201 51202 51301 51302 51401
obs         1449  1261  1399  2294  1291   220  1991  1584  1554    98  1963   979   580   790  1077  1686   180  1768
           51402 51501 51502 51601 51602 51701 51702 51801 51802 52101 52102 52201 52202 52301 52302 52401 52402 52501
obs          366  1070   447   627   989   629   898  1197   518  1269   266   878   663  1177   438   383  1089   368
           52502 52601 52602 52701 52702 52801 52802 53101 53102 53201 53202 53301 53302 53401 53402 53501 53502 53601
obs          977   310  1203   469   783   565   675   217  1189   307  1291   213  1422   172  1299   160  1307   524
           53602 53701 53702 53801 53802 53901 53902 54001 54002 54101 54102 54201 54202 54301 54302 54401 54402 54501
obs          901   332  1099   271   962   301  1142   361  1296   433  1199   171  1130   262  1306   119  1067   144
           54502 54602 54701 54702 54801 54802 54901 54902 55001 55002 55101 55102 58101 59101 59201 59202 60101 60102
obs         1430  1244    55  1636   110  1341    53  1454    82   986   172  1187  1815  1438  1061   233  1576    49
           61101 61102 61201 61202 61301 61302 61401 61402 61501 61502 61601 61602 61701 61702 61801 61802 61901 61902
obs          369  1280   150  1255   263  1344   730   723   312  1232   431  1028   274  1263   316  1041   227  1201
           62001 62002 62101 62102 62201 62202 62301 62302 62401 62402 62501 62502 62601 62602 62701 62702 62801 62802
obs          250  1100  1048  1687  1691  1506   370  1099   389   893   361   852   273   793   344   874   579   684
           62901 62902 63001 63002 63101 63102 63201 63202 63301 63302 63401 63402 63501 63502 63601 63602 63701 63702
obs          294   913   262   992   881  1622   861  1721  1076  1711   424  1039   214  1030   600   702   361   968
           63801 63802 63901 63902 64001 64002 64101 64102 64201 64202 64301 64302 64401 64402 64501 64502 64901 64902
obs          626   760   516   845   968   508   824  1798   362   915   868   791   647   863   659   777   695   679
           65101 65102 65201 65202 65301 65302 65401 65402 68101 68201 68202 69101 69102 70101 70201 71101 71102 71201
obs          492  1630   702   669   271   606   547   803  1651  1294   236  1301   105  1586  1458  1987  1123  2461
           71202 71301 71302 71401 71402 71501 71502 71601 71602 71701 71702 71801 71802 71901 71902 72001 72002 72101
obs          804   406   890  1466   974   268  1046   767   562   225   910   215   863   324   891   165   984  1868
           72102 72201 72202 72301 72302 72401 72402 72501 72502 72601 72602 72701 72702 72801 72802 72901 72902 73001
obs         2055   448  1120   406   664   382  1121   317  1226   445  1025   229  1245   209  1365   265  1115   410
           73002 73101 73102 73201 73202 73301 73302 73401 73402 73501 73502 73601 73602 73701 73702 73801 73802 73901
obs         1048   631  1679   591  2102   582   885   325  1264   627   830  1004   758   426  1023   650   976   528
           73902 74001 74002 74101 74102 74201 74202 74301 74302 74401 74402 74501 74502 74601 74602 74701 74702 74801
obs         1066   462   856   717  2401   888  1883   752  2278   999  1941   611  2289   431  2275   690  2138   279
           74802 74901 74902 75001 75002 75101 75102 75201 75202 75301 75302 75401 75402 75501 75502 75601 75602 76101
obs         2290   182   922    50  1057   390  2198   927  3135   503  2012  1242  1459   921  2994   303  1101   627
           76102 76201 76202 76301 76302 76401 76402 76501 76502 76601 76602 78101 78102 78201 78202 78301 78302 78401
obs          846   725   976   134  1181   474   964   195  1166   144  1147  1481    53  1134   209   915   290  1111
           78402 79101 79102 80101 80102 80201 80202 80301 80302 81101 81102 81201 81202 81301 81302 81401 81402 81501
obs          195  1623    43  1846    27  1239    47  1240   264  1907   945  1546  1206   383  1222   520   814   445
           81502 81601 81602 81701 81702 81801 81802 81901 81902 82101 82102 82201 82202 82301 82302 82401 82402 82501
obs          862   380  1017   169  1201    65  1026    98  1119  1443  1132   199   880   354   803   212  1276   473
           82502 82601 82602 82701 82702 82801 82802 88101 88102 88201 88202 89101 89102 89201 89202 91101 91102 91201
obs         1002   182   958   169   899   155   914  1576   165   712   563  1212   130   462   836   535   679   465
           91202 91301 91302 91401 91402 91501 91502 91601 91602 91701 91702 91801 91802 91901 91902 92001 92002 92101
obs          664   133   976   377   712   819   592   184   883   210  1092   153   922    46   795    11   832    88
           92102 92201 92202 94101 94102 94201 94202 94301 94302 94401 94402 94801 94802 94901 94902 95001 95002 95101
obs          713    30   857   592   759   198   914   671   580   627   585   414   856   625   656    87  1052     9
           95102 95201 95202 95301 95302 95401 95402 95501 95502 95601 95602 95701 95702 95801 95802 95901 95902 96001
obs         1044   806   646   226   782   128  1093   115   868    62  1487    61  1011    20  1107   180   805   153
           96002 96601 96602 96701 96702 96801 96802 96901 96902 97001 97002 97101 97102 97201 97202 97302 97402 97502
obs          874   131   944   284   668    86   793    54  1099    51  1101    27   936    19   807  1341   857   787
           97601 97602 98101 98102 101101 101102
obs           66   914  1307   130   1271    168
 [ reached getOption("max.print") -- omitted 2 rows ]
Data variables:
  [1] "TAHUN"      "WEIGHTR"    "ROWINDEX"   "KODE_PROV"  "KODE_KAB"   "KLAS"       "PSU"        "STRATA"    
  [9] "B2_R1"      "B2_R2"      "K3"         "K4"         "K5"         "K5_KD"      "K6"         "K7"        
 [17] "K8_BLN"     "K8_TH"      "K9"         "R3B"        "R4"         "R5"         "R6A"        "R6B_P"     
 [25] "R6B_KD"     "R6C_BLN"    "R6C_TH"     "R6D"        "R6E"        "R6F"        "R6G1_KD"    "R6G1MTD"   
 [33] "R6G1SB1"    "R6G1SB1KD"  "R6G1SB2"    "R6G1SB3"    "R6G1SB4"    "R6G2_KD"    "R6G2MTD"    "R6G2SB1"   
 [41] "R6G2SB1KD"  "R6G2SB2"    "R6G2SB3"    "R6G2SB4"    "R6G3_KD"    "R6G3MTD"    "R6G3SB1"    "R6G3SB1KD" 
 [49] "R6G3_SB2"   "R6G3_SB3"   "R6G3_SB4"   "R6H"        "R6I"        "R6J"        "R7"         "R7_PROV"   
 [57] "R7_KAB"     "R8A"        "R8B"        "R8C"        "R8D"        "R8E"        "R8F"        "R9A"       
 [65] "R9B"        "R9C"        "R10"        "R11A"       "R11B"       "R11C"       "R11D"       "R13A"      
 [73] "R13B"       "R13C"       "R13C_BLN"   "R13C_TH"    "R14AKATEGO" "R14AKATE_A" "R14BKBJI20" "R14BKBJI19"
 [81] "R15_UANG"   "R15_BRG"    "R16A"       "R16B"       "R17A_BLN"   "R17A_TH"    "R17B"       "R18A_SEN"  
 [89] "R18A_SEL"   "R18A_RAB"   "R18A_KAM"   "R18A_JUM"   "R18A_SAB"   "R18A_MNG"   "R18A_JML"   "R18A_BLT"  
 [97] "R18B"       "R19A1"      "R19A2"      "R19A3"      "R19B"       "R19C1"      "R19C2"      "R19C3"     
[105] "R19C4"      "R19C5"      "R20"        "R21"        "R22A"       "R22B"       "R22B_PROV"  "R22B_KAB"  
[113] "R22C"       "R22D"       "R23A1"      "R23A2"      "R23A3"      "R23A4"      "R23A5"      "R23A6"     
[121] "R23A7"      "R23A8"      "R23B"       "R24A"       "R24B"       "R24C"       "R24D"       "R24E"      
[129] "R24F"       "R24G"       "R24H"       "R24I"       "R25A"       "R25B"       "R26"        "R27A"      
[137] "R27B"       "R27C"       "R28A"       "R28B_SEN"   "R28B_SEL"   "R28B_RAB"   "R28B_KAM"   "R28B_JUM"  
[145] "R28B_SAB"   "R28B_MNG"   "R28B_JML"   "R28B_BLT"   "R28C"       "R29A"       "R29B"       "R29C"      
[153] "R30"        "R31A"       "R31B"       "R32A"       "R32B"       "R33_TH"     "R33_BLN"    "R34A"      
[161] "R34B"       "R34C"       "R34D"       "R34E"       "R34F"       "R35A"       "R35B"       "R35C"      
[169] "R35D"       "R36A"       "R36B"       "R36C"       "R37"        "R38A"       "R38A_BLN"   "R38A_TH"   
[177] "R38B"       "R39A"       "R39B_BLN"   "R39B_TH"    "R40D"       "R41AKATEGO" "R41AKATE_A" "R41BKBJI20"
[185] "R41BKBJI19" "R42"        "R43A"       "R43B"       "R43C"       "R43D"       "R44A"       "R44B"      
[193] "R44C"       "R44D"       "R44E"       "R44F"       "R44G"       "R44H"       "R44I"       "R44J1"     
[201] "R44J2"      "R44J3"      "R44J4"      "R44J5"      "R44J6"      "R44J7"      "R45A"       "R45B"      
[209] "R46"        "R47_BLN"    "R47_TH"     "R49KATEGOR" "R49KATEG_A" "R50KBJI201" "R50KBJI198" "R51"       
[217] "R52"        "R53"        "R54"        "JENISKEGIA"

Statistik deskriptif dengan variabel kontinu

Kita akan mulai dengan sesuatu yang sederhana: menghitung mean dari variabel kontinu. Dalam contoh ini, kami menggunakan variabel K9 yang merupakan usia responden (sakernas_agt_2023_15_ly.csv). Harap dicatat bahwa dokumentasi untuk fungsi svymean, serta fungsi lain yang menyediakan statistik deskriptif, dapat ditemukan di bagian dokumentasi yang disebut surveysummary.

options(survey.lonely.psu = "adjust")
svymean(~K9, survey_design)
     mean     SE
K9 40.249 0.0351

Kita juga bisa mendapatkan simpangan baku dari variabel umur dengan menggunakan fungsi svysd, dari paket jtools.

svysd(~K9, survey_design)
   std. dev.
K9    16.614

Menghitung mean dari R9A yang menyatakan bahwa responden bekerja paling sedikit satu jam dalam seminggu terakhir.

svymean(~R9A, survey_design)
     mean     SE
R9A 1.393 0.0013

Contoh lainnya (R6A: Pendidikan tertinggi ditamatkan)

svymean(~R6A, survey_design)
      mean     SE
R6A 3.5515 0.0097

Mean lebih dari satu variabel dapat diperoleh dengan memberi tanda “+” di antara variabel-variabel tersebut:

svymean(~K9+R9A+R6A, survey_design)
       mean     SE
K9  40.2495 0.0351
R9A  1.3930 0.0013
R6A  3.5515 0.0097

Pada contoh di bawah ini, diperoleh mean, deviasi standar, dan varians untuk variabel R6B_P (Penyelenggara pendidikan dan jurusan pendidikan/bidang studi pada pendidikan tertinggi yang ditamatkan):

svymean(~R6B_P, survey_design)
         mean     SE
R6B_P 0.63107 0.0033
svysd(~R6B_P, survey_design)
      std. dev.
R6B_P     0.805
svyvar(~R6B_P, survey_design)
      variance     SE
R6B_P  0.64818 0.0024

Fungsi cv digunakan untuk mendapatkan koefisien variasi. Koefisien variasi adalah rasio kesalahan standar terhadap rata-rata dikalikan dengan 100%. Ini merupakan indikasi variabilitas relatif terhadap rata-rata populasi dan tidak dipengaruhi oleh unit pengukuran variabel.

cv(svymean(~R6B_P, survey_design))
            R6B_P
R6B_P 0.005235568

Di bawah ini adalah contoh cara mendapatkan efek desain (Deff). Deff adalah rasio dua varian. Pada pembilangnya kita mempunyai estimasi varians dari sampel saat ini (termasuk seluruh elemen desainnya), dan pada penyebutnya kita mempunyai varians dari sampel hipotetis dengan ukuran yang sama yang diambil sebagai SRS (Sampel Acak Sederhana). Dengan kata lain, Deff memberi tahu Anda seberapa efisien sampel Anda dibandingkan dengan SRS berukuran sama. Jika Deff kurang dari 1, sampel Anda lebih efisien dibandingkan SRS; namun umumnya, Deff lebih besar dari 1. Pada contoh di bawah, Deff=12.827. Artinya, sampel yang diambil menggunakan rencana pengambilan sampel saat ini harus berjumlah 13 kali lipat dari jumlah yang diperlukan jika sampel dikumpulkan melalui SRS. Secara spesifik, Deff khusus untuk suatu variabel, sehingga beberapa variabel mungkin memiliki Deff yang lebih besar atau lebih kecil.

svymean(~R6B_P, survey_design, deff = TRUE)
          mean       SE   DEff
R6B_P 0.631069 0.003304 12.827

Kuantil adalah statistik deskriptif yang berguna untuk variabel kontinu, khususnya variabel yang tidak terdistribusi normal.

svyquantile(~R6A, survey_design, c(.25,.5,.75),ci=TRUE)
$R6A
     quantile ci.2.5 ci.97.5        se
0.25        2      2       3 0.2550697
0.5         3      3       4 0.2550697
0.75        4      4       5 0.2550697

attr(,"hasci")
[1] TRUE
attr(,"class")
[1] "newsvyquantile"

Mari kita lihat beberapa statistik deskriptif untuk variabel biner. Kita mulai dengan mendapatkan mean dari variabel K4, yang berkode 1 untuk laki-laki dan 2 untuk perempuan. Mengambil mean suatu variabel yang berkode 1/2 menghasilkan proporsi 2, sehingga mean dari variabel tersebut adalah taksiran proporsi penduduk yang berjenis kelamin perempuan.

svymean(~K4, survey_design)
     mean    SE
K4 1.4969 6e-04

Kita dapat menggunakan fungsi confint untuk mendapatkan interval kepercayaan di sekitar mean ini.

confint(svymean(~K4, survey_design))
      2.5 %   97.5 %
K4 1.495743 1.497961

Namun, komentar di halaman 70 dokumentasi paket survei, kita sebaiknya menggunakan svyciprop daripada confint. Ada beberapa opsi yang dapat diberikan untuk argumen method. Silakan lihat halaman 70-71 dokumentasi. Opsi likelihood menggunakan distribusi chi-kuadrat berskala (Rao-Scott) untuk log likelihood dari distribusi binomial.

svyciprop(~I(K4==2), survey_design, method="likelihood")
                  2.5% 97.5%
I(K4 == 2) 0.497 0.496 0.498
# li adalah kependekan dari likelihood
svyciprop(~I(K4==1), survey_design, method="li")
                  2.5% 97.5%
I(K4 == 1) 0.503 0.502 0.504

Opsi logit cocok dengan model regresi logistik dan menghitung interval tipe Wald pada skala log-odds, yang kemudian diubah menjadi skala probabilitas.

svyciprop(~I(K4==2), survey_design, method="logit")
                  2.5% 97.5%
I(K4 == 2) 0.497 0.496 0.498

Opsi xlogit menggunakan transformasi logit dari mean dan kemudian melakukan transformasi kembali ke skala probabilitas. Tampaknya ini adalah metode yang digunakan oleh SUDAAN dan SPSS COMPLEX SAMPLES.

svyciprop(~I(K4==2), survey_design, method="xlogit")
                  2.5% 97.5%
I(K4 == 2) 0.497 0.496 0.498

Sebagaimana dinyatakan pada halaman 71 dokumentasi, penggunaan opsi mean (disingkat dalam kode di bawah ini), mereproduksi hasil yang diberikan oleh perintah svy: mean Stata.

svyciprop(~I(K4==2), survey_design, method="me", df=degf(survey_design))
                  2.5% 97.5%
I(K4 == 2) 0.497 0.496 0.498

Sebagaimana dinyatakan pada halaman 71 dokumentasi, penggunaan opsi logit (disingkat dalam kode di bawah ini), mereproduksi hasil yang diberikan oleh perintah svy: prop Stata.

svyciprop(~I(K4==2), survey_design, method="lo", df=degf(survey_design))
                  2.5% 97.5%
I(K4 == 2) 0.497 0.496 0.498

Anda juga bisa mendapatkan proporsi 1, seperti yang ditunjukkan di bawah ini.

svyciprop(~I(K4==1), survey_design, method="mean")
                  2.5% 97.5%
I(K4 == 1) 0.503 0.502 0.504

Di bawah ini adalah cara lain untuk mendapatkan proporsi 2. Inti dari contoh ini adalah Anda dapat menggunakan sintaksis jenis ini untuk mendapatkan proporsi level mana pun dari variabel kategori.

svyciprop(~I(K4==2), survey_design, method="mean")
                  2.5% 97.5%
I(K4 == 2) 0.497 0.496 0.498

Terakhir, mari kita lihat cara mendapatkan totalnya dengan menggunakan fungsi svytotal. (K5 Kewarganegaraan 1-WNI 2-WNA)

svytotal(~K5,design = survey_design)
       total      SE
K5 212602475 1669011

Pada contoh berikutnya, kita akan mendapatkan koefisien variasi untuk total ini.

cv(svytotal(~K5,design = survey_design))
            K5
K5 0.007850386

Mari kita dapatkan efek desain secara total.

svytotal(~K5,design = survey_design, deff = TRUE)
       total        SE   DEff
K5 212602475   1669011 663857

Statistik deskriptif untuk variabel kategori

Mari kita lihat beberapa cara untuk mendapatkan statistik deskriptif untuk variabel kategori, baik variabel tersebut biner atau tidak. Kita akan mulai dengan fungsi tabel. Pada contoh di bawah ini, kita mendapatkan frekuensi untuk variabel K4.

svytable(~K4, design = survey_design)
K4
        1         2 
106963005 105624436 

Kita juga dapat menggunakan fungsi tabel untuk mendapatkan tabulasi silang. Kita akan mulai dengan tab silang dua arah.

# 2-arah
svytable(~K4+K5, survey_design)
   K5
K4          1         2
  1 106954660      8345
  2 105617747      6689

Pada contoh berikutnya, kami menggunakan sintaks berbeda untuk melakukan hal yang sama. Perhatikan bahwa keluarannya ditampilkan berbeda, meskipun informasi dalam keluarannya sama.

# 2-arah
svytable(~interaction(K4, K5), design = survey_design)
interaction(K4, K5)
      1.1       2.1       1.2       2.2 
106954660 105617747      8345      6689 

Sekarang mari kita buat tabel tiga arah.

# 3-arah
svytable(~interaction(K4, K5, R6D), design = survey_design)
interaction(K4, K5, R6D)
   1.1.1    2.1.1    1.2.1    2.2.1    1.1.2    2.1.2    1.2.2    2.2.2 
20024101 18121932     2475     2453 86930559 87495815     5870     4236 

Tabel empat arah.

# 4-arah
svytable(~interaction(K4, K5, R6D, R28A), design = survey_design)
interaction(K4, K5, R6D, R28A)
 1.1.1.0  2.1.1.0  1.2.1.0  2.2.1.0  1.1.2.0  2.1.2.0  1.2.2.0  2.2.2.0  1.1.1.1  2.1.1.1  1.2.1.1  2.2.1.1  1.1.2.1 
 3073937  6306438     1013     1697 18649570 44698662     1912     1835  3030861  1573946        0        0 11705460 
 2.1.2.1  1.2.2.1  2.2.2.1  1.1.1.2  2.1.1.2  1.2.1.2  2.2.1.2  1.1.2.2  2.1.2.2  1.2.2.2  2.2.2.2 
 4638383        0      393 13919303 10241548     1462      756 56575529 38158770     3958     2008 

Meskipun bukan statistik deskriptif, mari kita lihat cara mendapatkan uji chi-kuadrat sambil membahas tabel. Tentu saja, hanya tabel dua arah yang dapat ditentukan.

svychisq(~K4+K5, survey_design, statistic="adjWald")

    Design-based Wald test of association

data:  svychisq(~K4 + K5, survey_design, statistic = "adjWald")
F = 0.31065, ndf = 1, ddf = 8332, p-value = 0.5773

Grafik variabel kontinu

Mari kita mulai dengan histogram. Secara default, density ditampilkan pada sumbu y.

svyhist(~R6A, survey_design)

Pengkodean K9

svyhist(~K9, survey_design, probability = FALSE)

Kita juga bisa membuat boxplots.

svyboxplot(~R6B_P~1, survey_design, all.outliers=TRUE)

Kita dapat memecah boxplot dengan variabel kelompok. Variabel kelompok harus berupa faktor.

svyboxplot(~R6B_P~factor(K4), survey_design, all.outliers=TRUE)

Kita bisa membuat diagram batang. Pada contoh di bawah, kami juga memperlihatkan beberapa sintaks yang digunakan untuk analisis subpopulasi.

barplt<-svyby(~R18B+R28C, ~K4, survey_design, na = TRUE, svymean)
barplot(barplt,beside=TRUE,legend=TRUE)

dotchart(barplt)

Kita dapat membuat scatterplot dengan bobot sampling yang sesuai dengan ukuran bubble.

svyplot(~R18B+R28C, survey_design, style="bubble")

Ada berbagai macam plot dengan kepadatan dan kehalusan yang dapat dibuat. Beberapa contohnya ada di bawah.

smth<-svysmooth(~R18B, design=survey_design)
plot(smth)

dens<-svysmooth(~R18B, design=survey_design,bandwidth=30)
plot(dens)

dens1<-svysmooth(~R18B, design=survey_design)
plot(dens1)

LS0tCnRpdGxlOiAiU1VSVkVJIEFOR0tBVEFOIEtFUkpBIE5BU0lPTkFMIgpvdXRwdXQ6CiAgaHRtbF9ub3RlYm9vazogZGVmYXVsdAogIHdvcmRfZG9jdW1lbnQ6IGRlZmF1bHQKICBwZGZfZG9jdW1lbnQ6IGRlZmF1bHQKLS0tCgo+ICMjIyMgKkFndXN0dXMgMjAyMyoKCioqQW5na2F0YW4gS2VyamEgTmFzaW9uYWwgKFNha2VybmFzKSAyMDIzKiogYWRhbGFoIHN1cnZlaSB5YW5nIGRpbGFrdWthbiBvbGVoIEJhZGFuIFB1c2F0IFN0YXRpc3RpayAoQlBTKSBJbmRvbmVzaWEgdW50dWsgbWVuZ3VtcHVsa2FuIGRhdGEgbWVuZ2VuYWkga2V0ZW5hZ2FrZXJqYWFuIGRpIEluZG9uZXNpYS4gVHVqdWFuIHV0YW1hIGRhcmkgc3VydmVpIGluaSBhZGFsYWggdW50dWsgbWVueWVkaWFrYW4gZGF0YSB5YW5nIGFrdXJhdCBkYW4ga29tcHJlaGVuc2lmIHRlbnRhbmcgYmVyYmFnYWkgYXNwZWsga2V0ZW5hZ2FrZXJqYWFuIGRpIEluZG9uZXNpYSwgdGVybWFzdWsgdGluZ2thdCBwYXJ0aXNpcGFzaSBhbmdrYXRhbiBrZXJqYSwgdGluZ2thdCBwZW5nYW5nZ3VyYW4sIGplbmlzIHBla2VyamFhbiwgdXBhaCwgamFtIGtlcmphLCBzZXJ0YSBrYXJha3RlcmlzdGlrIGRlbW9ncmFmaXMgcGVrZXJqYSBzZXBlcnRpIHVzaWEsIGplbmlzIGtlbGFtaW4sIGRhbiB0aW5na2F0IHBlbmRpZGlrYW4uCgpgYGAgICAgICAgICAKQW5hbGlzaXMgZGF0YSAgc3VydmVpIGluaSBtZW5nZ3VuYWthbiBtYXRlcmkgZGFyaTogSW50cm9kdWN0aW9uIHRvIFNBUy4gVUNMQTogU3RhdGlzdGljYWwgQ29uc3VsdGluZyBHcm91cC4gZnJvbSBodHRwczovL3N0YXRzLm9hcmMudWNsYS5lZHUvc2FzL21vZHVsZXMvaW50cm9kdWN0aW9uLXRvLXRoZS1mZWF0dXJlcy1vZi1zYXMvIChhY2Nlc3NlZCBBdWd1c3QgMjIsIDIwMjEpLgpgYGAKCiMjIyBNZW5ndW5kdWggZGFuIG1lbmdpbnN0YWwgcGFrZXQKCkFuZGEgaGFueWEgcGVybHUgbWVuamFsYW5rYW4gcGVyaW50YWggYGluc3RhbGwucGFja2FnZXNgIGJlcmlrdXQgc2VrYWxpIHNhamEuIEJpYXJrYW4gcGVyaW50YWggaW5pIHRldGFwIGFkYSBkaSBmaWxlIFIgc2NyaXB0IEFuZGEsIG5hbXVuIHRhbWJhaGthbiBzaW1ib2wgYCNgIGRpIGRlcGFuIHNldGlhcCBiYXJpcyB1bnR1ayBtZW5nb21lbnRhcmlueWEuCgpgYGB7cn0KIyBpbnN0YWxsLnBhY2thZ2VzKCJzdXJ2ZXkiKQojIGluc3RhbGwucGFja2FnZXMoImRwbHIiKQojIGluc3RhbGwucGFja2FnZXMoImp0b29scyIpCmBgYAoKU2V0ZWxhaCBwYWtldCBkaXVuZHVoLCBwYWtldCB0ZXJzZWJ1dCBwZXJsdSBkaW11YXQuIEluaSBwZXJsdSBkaWxha3VrYW4gcGFkYSBhd2FsIHNldGlhcCBzZXNpIFIuCgpgYGB7cn0KbGlicmFyeShzdXJ2ZXkpCmxpYnJhcnkoZHBseXIpCmxpYnJhcnkoanRvb2xzKQpgYGAKCiMjIyBNZW1iYWNhIGRhdGEga2UgZGFsYW0gUgoKRGF0YSAqKlNha2VybmFzIEFndXN0dXMgMjAyMyoqIGRpZGlzdHJpYnVzaWthbiBkYWxhbSBmb3JtYXQgY3N2ICgqKipzYWtlcm5hc19hZ3RfMjAyM18xNS5jc3YpKioqLiBBbmRhIGRhcGF0IG1lbmdndW5ha2FuIHJlYWQuY3N2KCkgdW50dWsgbWVtYmFjYSBkYXRhIGtlIGRhbGFtIFIuIFBlcmludGFobnlhIGFrYW4gdGVybGloYXQgc2VwZXJ0aSBpbmk6CgpgYGB7cn0KZGF0YSA8LSByZWFkLmNzdigic2FrZXJuYXNfYWd0XzIwMjNfMTUuY3N2IikKYGBgCgoqKk1lbWVyaWtzYSBkYXRhIHlhbmcgZGlpbXBvcioqIGRlbmdhbiBtZW5nZ3VuYWthbiBmdW5nc2kgaGVhZChkYXRhKQoKYGBge3J9CmhlYWQoZGF0YSkKYGBgCgojIyMgVmFyaWFiZWwKCktpdGEgYWthbiBtZW5nZ3VuYWthbiBiZWJlcmFwYSB2YXJpYWJlbCBiZXJiZWRhIGRhbGFtIGNvbnRvaCBhbmFsaXNpcyBpbmkuIERpIGJhd2FoIGFkYWxhaCByaW5na2FzYW4gc2luZ2thdCBCZWJlcmFwYSB2YXJpYWJlbCB5YW5nIGFrYW4gZGlhbmFsaXNpcyB0ZXJtYXN1ayBkaSBkYWxhbW55YSBtZW11YXQgaW5mb3JtYXNpIG9ic2VydmFzaSB5YW5nIG1lbmNha3VwIG5pbGFpIHlhbmcgYmVuYXItYmVuYXIgaGlsYW5nIHNlcnRhIG5pbGFpIHlhbmcgZGl0b2xhayBkYW4gdGlkYWsgZGlrZXRhaHVpLgoKKipLNCoqIC0gSmVuaXMgS2VsYW1pbiwgcmVudGFuZyBuaWxhaTogMT1MYWtpLWxha2kgMj1QZXJlbXB1YW47IHRpZGFrIGFkYSBwZW5nYW1hdGFuIGhpbGFuZwoKKipLNSoqIC0gS2V3YXJnYW5lZ2FyYWFuLCByZW50YW5nIG5pbGFpOiAxPVdOSSAyPVdOQSwgdGlkYWsgYWRhIHBlbmdhbWF0YW4gaGlsYW5nCgoqKks5KiogLSBVbXVyLCByZW50YW5nIG5pbGFpOiAxNSAtIDk4LCB0aWRhayBhZGEgcGVuZ2FtYXRhbiBoaWxhbmcKCioqUjZBKiogLSBQZW5kaWRpa2FuIHRlcnRpbmdnaSBkaXRhbWF0a2FuLCByZW50YW5nIG5pbGFpOiAxPVRpZGFrL2JlbHVtIHRhbWF0IFNEIDI9U0QvTUkvU0RMQi9QYWtldCBBIDM9U01QL01Ucy9TTVBMQi9QYWtldCBCIDQ9U01BL01BL1NNTEIvUGFrZXQgQyA1PVNNSyA2PU1BSyA3PURpcGxvbWEgSS9JSS9JSUkgOD1EaXBsb21hIElWIDk9UzEgMTA9UzIgMTE9UzIgVGVyYXBhbiAxMj1TMywgdGlkYWsgYWRhIHBlbmdhbWF0YW4gaGlsYW5nCgoqKlI2Ql9QKiogLSBQZW55ZWxlbmdnYXJhIHBlbmRpZGlrYW4sIHJlbnRhbmcgbmlsYWk6IDE9TmVnZXJpIDI9U3dhc3RhIDM9S2VkaW5hc2FuIDQ9VGlkYWsgVGFodSwgNDQ4NTkzIHBlbmdhbWF0YW4gaGlsYW5nCgoqKlI5QSoqIC0gYmVrZXJqYSBwYWxpbmcgc2VkaWtpdCBzYXR1IGphbSwgcmVudGFuZyBuaWxhaTogMT1ZYSAyPVRpZGFrLCB0aWRhayBhZGEgcGVuZ2FtYXRhbiBoaWxhbmcKCioqUjE4QioqIC0ganVtbGFoIGphbSBrZXJqYSBiaWFzYW55YSBkYWxhbSBzZW1pbmdndSBkaSBwZWtlcmphYW4gYXRhdSBrZWdpYXRhbiB1c2FoYSwgcmVudGFuZyBuaWxhaTogMCAtIDk4CgoqKlIyOEEqKiAtIFNlbWluZ2d1IHRlcmFraGlyIG1lbWlsaWtpIGxlYmloIGRhcmkgMSBwZWtlcmphYW4sIHJlbnRhbmcgbmlsYWk6IDE9WWEgMj1UaWRhaywgMjUwNTYwIHBlbmdhbWF0YW4gaGlsYW5nCgoqKlIyOEMqKiAtIEp1bWxhaCBqYW0ga2VyamEgYmlhc2FueWEgc2VsdXJ1aCBwZWtlcmphYW4gZGFsYW0gc2VtaW5nZ3UsIHJlbnRhbmcgbmlsYWk6IDAgLSA5OCAobmlsYWkgYWthbiBzYW1hIGRlbmdhbiBSMThCIGppa3EgaGFueWEgbWVtaWxpa2kgc2F0dSBwZWtlcmphYW4pCgojIyMgRnVuZ3NpIHN2eWRlc2lnbgoKU2ViZWx1bSBraXRhIG1lbXVsYWkgYW5hbGlzaXMsIGtpdGEgcGVybHUgbWVuZ2d1bmFrYW4gZnVuZ3NpICoqc3Z5ZGVzaWduKiogZGFyaSBwYWtldCDigJxzdXJ2ZWnigJ0geWFuZyBkaXR1bGlzIG9sZWggVGhvbWFzIEx1bWxleS4gRnVuZ3NpICoqc3Z5ZGVzaWduKiogbWVtYmVyaSB0YWh1IFIgdGVudGFuZyBlbGVtZW4gZGVzYWluIGRhbGFtIHN1cnZlaS4gU2V0ZWxhaCBwZXJpbnRhaCBpbmkgZGlrZWx1YXJrYW4sIHlhbmcgcGVybHUgQW5kYSBsYWt1a2FuIHVudHVrIGFuYWxpc2lzIEFuZGEgYWRhbGFoIG1lbmdndW5ha2FuIG9iamVrIHlhbmcgYmVyaXNpIGluZm9ybWFzaSBpbmkgZGkgc2V0aWFwIHBlcmludGFoLiBEYXRhIFNha2VybmFzIEFndXN0dXMgMjAyMjMgZGlyaWxpcyBkZW5nYW4gYm9ib3Qgc2FtcGVsICgqKldJR0hUUioqKSwgdmFyaWFiZWwgUFNVICgqKlBTVSoqKSwgZGFuIHZhcmlhYmVsIHN0cmF0YSAoKipTVFJBVEEqKikuIEZ1bmdzaSAqKnN2eWRlc2lnbioqIHRlcmxpaGF0IHNlcGVydGkgaW5pOgoKYGBge3J9CnN1cnZleV9kZXNpZ24gPC0gc3Z5ZGVzaWduKAogIGlkID0gflBTVSwKICB3ZWlnaHRzID0gfldFSUdIVFIsCiAgc3RyYXRhID0gflNUUkFUQSwKICBuZXN0ID0gVCwKICBkYXRhID0gZGF0YQopCgpzdXJ2ZXlfZGVzaWduCmBgYAoKS2l0YSBiaXNhIG1lbmRhcGF0a2FuIGluZm9ybWFzaSB0YW1iYWhhbiB0ZW50YW5nIHNhbXBlbCwgc2VwZXJ0aSBqdW1sYWggUFNVIHBlciBzdHJhdGEsIGRlbmdhbiBtZW5nZ3VuYWthbiBmdW5nc2kgKipzdW1tYXJ5KiouCgpgYGB7cn0Kc3VtbWFyeShzdXJ2ZXlfZGVzaWduKQpgYGAKCiMjIyBTdGF0aXN0aWsgZGVza3JpcHRpZiBkZW5nYW4gdmFyaWFiZWwga29udGludQoKS2l0YSBha2FuIG11bGFpIGRlbmdhbiBzZXN1YXR1IHlhbmcgc2VkZXJoYW5hOiBtZW5naGl0dW5nICoqbWVhbioqIGRhcmkgdmFyaWFiZWwga29udGludS4gRGFsYW0gY29udG9oIGluaSwga2FtaSBtZW5nZ3VuYWthbiB2YXJpYWJlbCAqKks5KiogeWFuZyBtZXJ1cGFrYW4gdXNpYSByZXNwb25kZW4gKCoqKnNha2VybmFzX2FndF8yMDIzXzE1X2x5LmNzdioqKikuIEhhcmFwIGRpY2F0YXQgYmFod2EgZG9rdW1lbnRhc2kgdW50dWsgZnVuZ3NpICoqc3Z5bWVhbioqLCBzZXJ0YSBmdW5nc2kgbGFpbiB5YW5nIG1lbnllZGlha2FuIHN0YXRpc3RpayBkZXNrcmlwdGlmLCBkYXBhdCBkaXRlbXVrYW4gZGkgYmFnaWFuIGRva3VtZW50YXNpIHlhbmcgZGlzZWJ1dCAqKnN1cnZleXN1bW1hcnkqKi4KCmBgYHtyfQpvcHRpb25zKHN1cnZleS5sb25lbHkucHN1ID0gImFkanVzdCIpCnN2eW1lYW4ofks5LCBzdXJ2ZXlfZGVzaWduKQpgYGAKCktpdGEganVnYSBiaXNhIG1lbmRhcGF0a2FuIHNpbXBhbmdhbiBiYWt1IGRhcmkgdmFyaWFiZWwgKip1bXVyKiogZGVuZ2FuIG1lbmdndW5ha2FuIGZ1bmdzaSAqKnN2eXNkKiosIGRhcmkgcGFrZXQgKipqdG9vbHMqKi4KCmBgYHtyfQpzdnlzZCh+SzksIHN1cnZleV9kZXNpZ24pCmBgYAoKTWVuZ2hpdHVuZyAqKm1lYW4qKiBkYXJpIFI5QSB5YW5nIG1lbnlhdGFrYW4gYmFod2EgcmVzcG9uZGVuIGJla2VyamEgcGFsaW5nIHNlZGlraXQgc2F0dSBqYW0gZGFsYW0gc2VtaW5nZ3UgdGVyYWtoaXIuCgpgYGB7cn0Kc3Z5bWVhbih+UjlBLCBzdXJ2ZXlfZGVzaWduKQpgYGAKCkNvbnRvaCBsYWlubnlhIChSNkE6IFBlbmRpZGlrYW4gdGVydGluZ2dpIGRpdGFtYXRrYW4pCgpgYGB7cn0Kc3Z5bWVhbih+UjZBLCBzdXJ2ZXlfZGVzaWduKQpgYGAKCioqTWVhbioqIGxlYmloIGRhcmkgc2F0dSB2YXJpYWJlbCBkYXBhdCBkaXBlcm9sZWggZGVuZ2FuIG1lbWJlcmkgdGFuZGEg4oCcK+KAnSBkaSBhbnRhcmEgdmFyaWFiZWwtdmFyaWFiZWwgdGVyc2VidXQ6CgpgYGB7cn0Kc3Z5bWVhbih+SzkrUjlBK1I2QSwgc3VydmV5X2Rlc2lnbikKYGBgCgpQYWRhIGNvbnRvaCBkaSBiYXdhaCBpbmksIGRpcGVyb2xlaCBtZWFuLCBkZXZpYXNpIHN0YW5kYXIsIGRhbiB2YXJpYW5zIHVudHVrIHZhcmlhYmVsICoqUjZCX1AqKiAoUGVueWVsZW5nZ2FyYSBwZW5kaWRpa2FuIGRhbiBqdXJ1c2FuIHBlbmRpZGlrYW4vYmlkYW5nIHN0dWRpIHBhZGEgcGVuZGlkaWthbiB0ZXJ0aW5nZ2kgeWFuZyBkaXRhbWF0a2FuKToKCmBgYHtyfQpzdnltZWFuKH5SNkJfUCwgc3VydmV5X2Rlc2lnbikKYGBgCgpgYGB7cn0Kc3Z5c2QoflI2Ql9QLCBzdXJ2ZXlfZGVzaWduKQpgYGAKCmBgYHtyfQpzdnl2YXIoflI2Ql9QLCBzdXJ2ZXlfZGVzaWduKQoKYGBgCgpGdW5nc2kgKipjdioqIGRpZ3VuYWthbiB1bnR1ayBtZW5kYXBhdGthbiBrb2VmaXNpZW4gdmFyaWFzaS4gS29lZmlzaWVuIHZhcmlhc2kgYWRhbGFoIHJhc2lvIGtlc2FsYWhhbiBzdGFuZGFyIHRlcmhhZGFwIHJhdGEtcmF0YSBkaWthbGlrYW4gZGVuZ2FuIDEwMCUuIEluaSBtZXJ1cGFrYW4gaW5kaWthc2kgdmFyaWFiaWxpdGFzIHJlbGF0aWYgdGVyaGFkYXAgcmF0YS1yYXRhIHBvcHVsYXNpIGRhbiB0aWRhayBkaXBlbmdhcnVoaSBvbGVoIHVuaXQgcGVuZ3VrdXJhbiB2YXJpYWJlbC4KCmBgYHtyfQpjdihzdnltZWFuKH5SNkJfUCwgc3VydmV5X2Rlc2lnbikpCmBgYAoKRGkgYmF3YWggaW5pIGFkYWxhaCBjb250b2ggY2FyYSBtZW5kYXBhdGthbiBlZmVrIGRlc2FpbiAoKipEZWZmKiopLiAqKkRlZmYqKiBhZGFsYWggcmFzaW8gZHVhIHZhcmlhbi4gUGFkYSBwZW1iaWxhbmdueWEga2l0YSBtZW1wdW55YWkgZXN0aW1hc2kgdmFyaWFucyBkYXJpIHNhbXBlbCBzYWF0IGluaSAodGVybWFzdWsgc2VsdXJ1aCBlbGVtZW4gZGVzYWlubnlhKSwgZGFuIHBhZGEgcGVueWVidXRueWEga2l0YSBtZW1wdW55YWkgdmFyaWFucyBkYXJpIHNhbXBlbCBoaXBvdGV0aXMgZGVuZ2FuIHVrdXJhbiB5YW5nIHNhbWEgeWFuZyBkaWFtYmlsIHNlYmFnYWkgKipTUlMqKiAoU2FtcGVsIEFjYWsgU2VkZXJoYW5hKS4gRGVuZ2FuIGthdGEgbGFpbiwgRGVmZiBtZW1iZXJpIHRhaHUgQW5kYSBzZWJlcmFwYSBlZmlzaWVuIHNhbXBlbCBBbmRhIGRpYmFuZGluZ2thbiBkZW5nYW4gKipTUlMqKiBiZXJ1a3VyYW4gc2FtYS4gSmlrYSAqKkRlZmYqKiBrdXJhbmcgZGFyaSAxLCBzYW1wZWwgQW5kYSBsZWJpaCBlZmlzaWVuIGRpYmFuZGluZ2thbiAqKlNSUyoqOyBuYW11biB1bXVtbnlhLCAqKkRlZmYqKiBsZWJpaCBiZXNhciBkYXJpIDEuIFBhZGEgY29udG9oIGRpIGJhd2FoLCAqKkRlZmYqKj0qKjEyLjgyNyoqLiBBcnRpbnlhLCBzYW1wZWwgeWFuZyBkaWFtYmlsIG1lbmdndW5ha2FuIHJlbmNhbmEgcGVuZ2FtYmlsYW4gc2FtcGVsIHNhYXQgaW5pIGhhcnVzIGJlcmp1bWxhaCAxMyBrYWxpIGxpcGF0IGRhcmkganVtbGFoIHlhbmcgZGlwZXJsdWthbiBqaWthIHNhbXBlbCBkaWt1bXB1bGthbiBtZWxhbHVpICoqU1JTKiouIFNlY2FyYSBzcGVzaWZpaywgKipEZWZmKioga2h1c3VzIHVudHVrIHN1YXR1IHZhcmlhYmVsLCBzZWhpbmdnYSBiZWJlcmFwYSB2YXJpYWJlbCBtdW5na2luIG1lbWlsaWtpICoqRGVmZioqIHlhbmcgbGViaWggYmVzYXIgYXRhdSBsZWJpaCBrZWNpbC4KCmBgYHtyfQpzdnltZWFuKH5SNkJfUCwgc3VydmV5X2Rlc2lnbiwgZGVmZiA9IFRSVUUpCmBgYAoKS3VhbnRpbCBhZGFsYWggc3RhdGlzdGlrIGRlc2tyaXB0aWYgeWFuZyBiZXJndW5hIHVudHVrIHZhcmlhYmVsIGtvbnRpbnUsIGtodXN1c255YSB2YXJpYWJlbCB5YW5nIHRpZGFrIHRlcmRpc3RyaWJ1c2kgbm9ybWFsLgoKYGBge3J9CnN2eXF1YW50aWxlKH5SNkEsIHN1cnZleV9kZXNpZ24sIGMoLjI1LC41LC43NSksY2k9VFJVRSkKYGBgCgpNYXJpIGtpdGEgbGloYXQgYmViZXJhcGEgc3RhdGlzdGlrIGRlc2tyaXB0aWYgdW50dWsgdmFyaWFiZWwgYmluZXIuIEtpdGEgbXVsYWkgZGVuZ2FuIG1lbmRhcGF0a2FuICoqbWVhbioqIGRhcmkgdmFyaWFiZWwgKipLNCoqLCB5YW5nIGJlcmtvZGUgMSB1bnR1ayBsYWtpLWxha2kgZGFuIDIgdW50dWsgcGVyZW1wdWFuLiBNZW5nYW1iaWwgbWVhbiBzdWF0dSB2YXJpYWJlbCB5YW5nIGJlcmtvZGUgMS8yIG1lbmdoYXNpbGthbiBwcm9wb3JzaSAyLCBzZWhpbmdnYSAqKm1lYW4qKiBkYXJpIHZhcmlhYmVsIHRlcnNlYnV0IGFkYWxhaCB0YWtzaXJhbiBwcm9wb3JzaSBwZW5kdWR1ayB5YW5nIGJlcmplbmlzIGtlbGFtaW4gcGVyZW1wdWFuLgoKYGBge3J9CnN2eW1lYW4ofks0LCBzdXJ2ZXlfZGVzaWduKQpgYGAKCktpdGEgZGFwYXQgbWVuZ2d1bmFrYW4gZnVuZ3NpICoqY29uZmludCoqIHVudHVrIG1lbmRhcGF0a2FuIGludGVydmFsIGtlcGVyY2F5YWFuIGRpIHNla2l0YXIgbWVhbiBpbmkuCgpgYGB7cn0KY29uZmludChzdnltZWFuKH5LNCwgc3VydmV5X2Rlc2lnbikpCmBgYAoKTmFtdW4sIGtvbWVudGFyIGRpIGhhbGFtYW4gNzAgZG9rdW1lbnRhc2kgcGFrZXQgc3VydmVpLCBraXRhIHNlYmFpa255YSBtZW5nZ3VuYWthbiAqKnN2eWNpcHJvcCoqIGRhcmlwYWRhICoqY29uZmludCoqLiBBZGEgYmViZXJhcGEgb3BzaSB5YW5nIGRhcGF0IGRpYmVyaWthbiB1bnR1ayBhcmd1bWVuICoqbWV0aG9kKiouIFNpbGFrYW4gbGloYXQgaGFsYW1hbiA3MC03MSBkb2t1bWVudGFzaS4gT3BzaSAqKmxpa2VsaWhvb2QqKiBtZW5nZ3VuYWthbiBkaXN0cmlidXNpIGNoaS1rdWFkcmF0IGJlcnNrYWxhIChSYW8tU2NvdHQpIHVudHVrIGxvZyBsaWtlbGlob29kIGRhcmkgZGlzdHJpYnVzaSBiaW5vbWlhbC4KCmBgYHtyfQpzdnljaXByb3AofkkoSzQ9PTIpLCBzdXJ2ZXlfZGVzaWduLCBtZXRob2Q9Imxpa2VsaWhvb2QiKQpgYGAKCmBgYHtyfQojIGxpIGFkYWxhaCBrZXBlbmRla2FuIGRhcmkgbGlrZWxpaG9vZApzdnljaXByb3AofkkoSzQ9PTEpLCBzdXJ2ZXlfZGVzaWduLCBtZXRob2Q9ImxpIikKYGBgCgpPcHNpICoqbG9naXQqKiBjb2NvayBkZW5nYW4gbW9kZWwgcmVncmVzaSBsb2dpc3RpayBkYW4gbWVuZ2hpdHVuZyBpbnRlcnZhbCB0aXBlIFdhbGQgcGFkYSBza2FsYSBsb2ctb2RkcywgeWFuZyBrZW11ZGlhbiBkaXViYWggbWVuamFkaSBza2FsYSBwcm9iYWJpbGl0YXMuCgpgYGB7cn0Kc3Z5Y2lwcm9wKH5JKEs0PT0yKSwgc3VydmV5X2Rlc2lnbiwgbWV0aG9kPSJsb2dpdCIpCmBgYAoKT3BzaSAqKnhsb2dpdCoqIG1lbmdndW5ha2FuIHRyYW5zZm9ybWFzaSBsb2dpdCBkYXJpIG1lYW4gZGFuIGtlbXVkaWFuIG1lbGFrdWthbiB0cmFuc2Zvcm1hc2kga2VtYmFsaSBrZSBza2FsYSBwcm9iYWJpbGl0YXMuIFRhbXBha255YSBpbmkgYWRhbGFoIG1ldG9kZSB5YW5nIGRpZ3VuYWthbiBvbGVoIFNVREFBTiBkYW4gU1BTUyBDT01QTEVYIFNBTVBMRVMuCgpgYGB7cn0Kc3Z5Y2lwcm9wKH5JKEs0PT0yKSwgc3VydmV5X2Rlc2lnbiwgbWV0aG9kPSJ4bG9naXQiKQpgYGAKClNlYmFnYWltYW5hIGRpbnlhdGFrYW4gcGFkYSBoYWxhbWFuIDcxIGRva3VtZW50YXNpLCBwZW5nZ3VuYWFuIG9wc2kgbWVhbiAoZGlzaW5na2F0IGRhbGFtIGtvZGUgZGkgYmF3YWggaW5pKSwgbWVyZXByb2R1a3NpIGhhc2lsIHlhbmcgZGliZXJpa2FuIG9sZWggcGVyaW50YWggKipzdnkqKjogKiptZWFuKiogU3RhdGEuCgpgYGB7cn0Kc3Z5Y2lwcm9wKH5JKEs0PT0yKSwgc3VydmV5X2Rlc2lnbiwgbWV0aG9kPSJtZSIsIGRmPWRlZ2Yoc3VydmV5X2Rlc2lnbikpCmBgYAoKU2ViYWdhaW1hbmEgZGlueWF0YWthbiBwYWRhIGhhbGFtYW4gNzEgZG9rdW1lbnRhc2ksIHBlbmdndW5hYW4gb3BzaSBsb2dpdCAoZGlzaW5na2F0IGRhbGFtIGtvZGUgZGkgYmF3YWggaW5pKSwgbWVyZXByb2R1a3NpIGhhc2lsIHlhbmcgZGliZXJpa2FuIG9sZWggcGVyaW50YWggKipzdnkqKjogKipwcm9wKiogU3RhdGEuCgpgYGB7cn0Kc3Z5Y2lwcm9wKH5JKEs0PT0yKSwgc3VydmV5X2Rlc2lnbiwgbWV0aG9kPSJsbyIsIGRmPWRlZ2Yoc3VydmV5X2Rlc2lnbikpCmBgYAoKQW5kYSBqdWdhIGJpc2EgbWVuZGFwYXRrYW4gcHJvcG9yc2kgMSwgc2VwZXJ0aSB5YW5nIGRpdHVuanVra2FuIGRpIGJhd2FoIGluaS4KCmBgYHtyfQpzdnljaXByb3AofkkoSzQ9PTEpLCBzdXJ2ZXlfZGVzaWduLCBtZXRob2Q9Im1lYW4iKQpgYGAKCkRpIGJhd2FoIGluaSBhZGFsYWggY2FyYSBsYWluIHVudHVrIG1lbmRhcGF0a2FuIHByb3BvcnNpIDIuIEludGkgZGFyaSBjb250b2ggaW5pIGFkYWxhaCBBbmRhIGRhcGF0IG1lbmdndW5ha2FuIHNpbnRha3NpcyBqZW5pcyBpbmkgdW50dWsgbWVuZGFwYXRrYW4gcHJvcG9yc2kgbGV2ZWwgbWFuYSBwdW4gZGFyaSB2YXJpYWJlbCBrYXRlZ29yaS4KCmBgYHtyfQpzdnljaXByb3AofkkoSzQ9PTIpLCBzdXJ2ZXlfZGVzaWduLCBtZXRob2Q9Im1lYW4iKQpgYGAKClRlcmFraGlyLCBtYXJpIGtpdGEgbGloYXQgY2FyYSBtZW5kYXBhdGthbiB0b3RhbG55YSBkZW5nYW4gbWVuZ2d1bmFrYW4gZnVuZ3NpIHN2eXRvdGFsLiAoKipLNSoqIEtld2FyZ2FuZWdhcmFhbiAxLVdOSSAyLVdOQSkKCmBgYHtyfQpzdnl0b3RhbCh+SzUsZGVzaWduID0gc3VydmV5X2Rlc2lnbikKYGBgCgpQYWRhIGNvbnRvaCBiZXJpa3V0bnlhLCBraXRhIGFrYW4gbWVuZGFwYXRrYW4ga29lZmlzaWVuIHZhcmlhc2kgdW50dWsgdG90YWwgaW5pLgoKYGBge3J9CmN2KHN2eXRvdGFsKH5LNSxkZXNpZ24gPSBzdXJ2ZXlfZGVzaWduKSkKYGBgCgpNYXJpIGtpdGEgZGFwYXRrYW4gZWZlayBkZXNhaW4gc2VjYXJhIHRvdGFsLgoKYGBge3J9CnN2eXRvdGFsKH5LNSxkZXNpZ24gPSBzdXJ2ZXlfZGVzaWduLCBkZWZmID0gVFJVRSkKYGBgCgojIyMgU3RhdGlzdGlrIGRlc2tyaXB0aWYgdW50dWsgdmFyaWFiZWwga2F0ZWdvcmkKCk1hcmkga2l0YSBsaWhhdCBiZWJlcmFwYSBjYXJhIHVudHVrIG1lbmRhcGF0a2FuIHN0YXRpc3RpayBkZXNrcmlwdGlmIHVudHVrIHZhcmlhYmVsIGthdGVnb3JpLCBiYWlrIHZhcmlhYmVsIHRlcnNlYnV0IGJpbmVyIGF0YXUgdGlkYWsuIEtpdGEgYWthbiBtdWxhaSBkZW5nYW4gZnVuZ3NpIHRhYmVsLiBQYWRhIGNvbnRvaCBkaSBiYXdhaCBpbmksIGtpdGEgbWVuZGFwYXRrYW4gZnJla3VlbnNpIHVudHVrIHZhcmlhYmVsICoqSzQqKi4KCmBgYHtyfQpzdnl0YWJsZSh+SzQsIGRlc2lnbiA9IHN1cnZleV9kZXNpZ24pCmBgYAoKS2l0YSBqdWdhIGRhcGF0IG1lbmdndW5ha2FuIGZ1bmdzaSB0YWJlbCB1bnR1ayBtZW5kYXBhdGthbiB0YWJ1bGFzaSBzaWxhbmcuIEtpdGEgYWthbiBtdWxhaSBkZW5nYW4gdGFiIHNpbGFuZyBkdWEgYXJhaC4KCmBgYHtyfQojIDItYXJhaApzdnl0YWJsZSh+SzQrSzUsIHN1cnZleV9kZXNpZ24pCmBgYAoKUGFkYSBjb250b2ggYmVyaWt1dG55YSwga2FtaSBtZW5nZ3VuYWthbiBzaW50YWtzIGJlcmJlZGEgdW50dWsgbWVsYWt1a2FuIGhhbCB5YW5nIHNhbWEuIFBlcmhhdGlrYW4gYmFod2Ega2VsdWFyYW5ueWEgZGl0YW1waWxrYW4gYmVyYmVkYSwgbWVza2lwdW4gaW5mb3JtYXNpIGRhbGFtIGtlbHVhcmFubnlhIHNhbWEuCgpgYGB7cn0KIyAyLWFyYWgKc3Z5dGFibGUofmludGVyYWN0aW9uKEs0LCBLNSksIGRlc2lnbiA9IHN1cnZleV9kZXNpZ24pCmBgYAoKU2VrYXJhbmcgbWFyaSBraXRhIGJ1YXQgdGFiZWwgdGlnYSBhcmFoLgoKYGBge3J9CiMgMy1hcmFoCnN2eXRhYmxlKH5pbnRlcmFjdGlvbihLNCwgSzUsIFI2RCksIGRlc2lnbiA9IHN1cnZleV9kZXNpZ24pCmBgYAoKVGFiZWwgZW1wYXQgYXJhaC4KCmBgYHtyfQojIDQtYXJhaApzdnl0YWJsZSh+aW50ZXJhY3Rpb24oSzQsIEs1LCBSNkQsIFIyOEEpLCBkZXNpZ24gPSBzdXJ2ZXlfZGVzaWduKQpgYGAKCk1lc2tpcHVuIGJ1a2FuIHN0YXRpc3RpayBkZXNrcmlwdGlmLCBtYXJpIGtpdGEgbGloYXQgY2FyYSBtZW5kYXBhdGthbiB1amkgY2hpLWt1YWRyYXQgc2FtYmlsIG1lbWJhaGFzIHRhYmVsLiBUZW50dSBzYWphLCBoYW55YSB0YWJlbCBkdWEgYXJhaCB5YW5nIGRhcGF0IGRpdGVudHVrYW4uCgpgYGB7cn0Kc3Z5Y2hpc3Eofks0K0s1LCBzdXJ2ZXlfZGVzaWduLCBzdGF0aXN0aWM9ImFkaldhbGQiKQpgYGAKCiMjIyBHcmFmaWsgdmFyaWFiZWwga29udGludQoKTWFyaSBraXRhIG11bGFpIGRlbmdhbiBoaXN0b2dyYW0uIFNlY2FyYSBkZWZhdWx0LCBkZW5zaXR5IGRpdGFtcGlsa2FuIHBhZGEgc3VtYnUgeS4KCmBgYHtyfQpzdnloaXN0KH5SNkEsIHN1cnZleV9kZXNpZ24pCmBgYAoKUGVuZ2tvZGVhbiAqKks5KioKCmBgYHtyfQpzdnloaXN0KH5LOSwgc3VydmV5X2Rlc2lnbiwgcHJvYmFiaWxpdHkgPSBGQUxTRSkKYGBgCgpLaXRhIGp1Z2EgYmlzYSBtZW1idWF0IGJveHBsb3RzLgoKYGBge3J9CnN2eWJveHBsb3QoflI2Ql9QfjEsIHN1cnZleV9kZXNpZ24sIGFsbC5vdXRsaWVycz1UUlVFKQpgYGAKCktpdGEgZGFwYXQgbWVtZWNhaCBib3hwbG90IGRlbmdhbiB2YXJpYWJlbCBrZWxvbXBvay4gVmFyaWFiZWwga2Vsb21wb2sgaGFydXMgYmVydXBhIGZha3Rvci4KCmBgYHtyfQpzdnlib3hwbG90KH5SNkJfUH5mYWN0b3IoSzQpLCBzdXJ2ZXlfZGVzaWduLCBhbGwub3V0bGllcnM9VFJVRSkKYGBgCgpLaXRhIGJpc2EgbWVtYnVhdCBkaWFncmFtIGJhdGFuZy4gUGFkYSBjb250b2ggZGkgYmF3YWgsIGthbWkganVnYSBtZW1wZXJsaWhhdGthbiBiZWJlcmFwYSBzaW50YWtzIHlhbmcgZGlndW5ha2FuIHVudHVrIGFuYWxpc2lzIHN1YnBvcHVsYXNpLgoKYGBge3J9CmJhcnBsdDwtc3Z5YnkoflIxOEIrUjI4Qywgfks0LCBzdXJ2ZXlfZGVzaWduLCBuYSA9IFRSVUUsIHN2eW1lYW4pCmJhcnBsb3QoYmFycGx0LGJlc2lkZT1UUlVFLGxlZ2VuZD1UUlVFKQpgYGAKCmBgYHtyfQpkb3RjaGFydChiYXJwbHQpCmBgYAoKS2l0YSBkYXBhdCBtZW1idWF0IHNjYXR0ZXJwbG90IGRlbmdhbiBib2JvdCBzYW1wbGluZyB5YW5nIHNlc3VhaSBkZW5nYW4gdWt1cmFuIGJ1YmJsZS4KCmBgYHtyfQpzdnlwbG90KH5SMThCK1IyOEMsIHN1cnZleV9kZXNpZ24sIHN0eWxlPSJidWJibGUiKQpgYGAKCkFkYSBiZXJiYWdhaSBtYWNhbSBwbG90IGRlbmdhbiBrZXBhZGF0YW4gZGFuIGtlaGFsdXNhbiB5YW5nIGRhcGF0IGRpYnVhdC4gQmViZXJhcGEgY29udG9obnlhIGFkYSBkaSBiYXdhaC4KCmBgYHtyfQpzbXRoPC1zdnlzbW9vdGgoflIxOEIsIGRlc2lnbj1zdXJ2ZXlfZGVzaWduKQpwbG90KHNtdGgpCmBgYAoKYGBge3J9CmRlbnM8LXN2eXNtb290aCh+UjE4QiwgZGVzaWduPXN1cnZleV9kZXNpZ24sYmFuZHdpZHRoPTMwKQpwbG90KGRlbnMpCmBgYAoKYGBge3J9CmRlbnMxPC1zdnlzbW9vdGgoflIxOEIsIGRlc2lnbj1zdXJ2ZXlfZGVzaWduKQpwbG90KGRlbnMxKQpgYGAK