library(stats)
# Data normalization: data 0 to 1 range e ana both axis e, maximum minimum difference diye each data ke divide kora
# Data standardization: mean (0,0), range +1 to -1
#scale = data normalization, center = data standardization
iris_PCA = prcomp(iris[ , -5],scale = TRUE,center = TRUE)
iris_PCA
Standard deviations (1, .., p=4):
[1] 1.7083611 0.9560494 0.3830886 0.1439265
Rotation (n x k) = (4 x 4):
PC1 PC2 PC3 PC4
sepal.length 0.5210659 -0.37741762 0.7195664 0.2612863
sepal.width -0.2693474 -0.92329566 -0.2443818 -0.1235096
petal.length 0.5804131 -0.02449161 -0.1421264 -0.8014492
petal.width 0.5648565 -0.06694199 -0.6342727 0.5235971
summary(iris_PCA)
Importance of components:
PC1 PC2 PC3 PC4
Standard deviation 1.7084 0.9560 0.38309 0.14393
Proportion of Variance 0.7296 0.2285 0.03669 0.00518
Cumulative Proportion 0.7296 0.9581 0.99482 1.00000
#Proportion of Variance: pc1 72.9% variance represent kore
# dimention reduce korar jonno pc1 and pc2 nibo
iris_PCA$x
PC1
[1,] -2.25714118
[2,] -2.07401302
[3,] -2.35633511
[4,] -2.29170679
[5,] -2.38186270
[6,] -2.06870061
[7,] -2.43586845
[8,] -2.22539189
[9,] -2.32684533
[10,] -2.17703491
[11,] -2.15907699
[12,] -2.31836413
[13,] -2.21104370
[14,] -2.62430902
[15,] -2.19139921
[16,] -2.25466121
[17,] -2.20021676
[18,] -2.18303613
[19,] -1.89223284
[20,] -2.33554476
[21,] -1.90793125
[22,] -2.19964383
[23,] -2.76508142
[24,] -1.81259716
[25,] -2.21972701
[26,] -1.94532930
[27,] -2.04430277
[28,] -2.16133650
[29,] -2.13241965
[30,] -2.25769799
[31,] -2.13297647
[32,] -1.82547925
[33,] -2.60621687
[34,] -2.43800983
[35,] -2.10292986
[36,] -2.20043723
[37,] -2.03831765
[38,] -2.51889339
[39,] -2.42152026
[40,] -2.16246625
[41,] -2.27884081
[42,] -1.85191836
[43,] -2.54511203
[44,] -1.95788857
[45,] -2.12992356
[46,] -2.06283361
[47,] -2.37677076
[48,] -2.38638171
[49,] -2.22200263
[50,] -2.19647504
[51,] 1.09810244
[52,] 0.72889556
[53,] 1.23683580
[54,] 0.40612251
[55,] 1.07188379
[56,] 0.38738955
[57,] 0.74403715
[58,] -0.48569562
[59,] 0.92480346
[60,] 0.01138804
[61,] -0.10982834
[62,] 0.43922201
[63,] 0.56023148
[64,] 0.71715934
[65,] -0.03324333
[66,] 0.87248429
[67,] 0.34908221
[68,] 0.15827980
[69,] 1.22100316
[70,] 0.16436725
[71,] 0.73521959
[72,] 0.47469691
[73,] 1.23005729
[74,] 0.63074514
[75,] 0.70031506
[76,] 0.87135454
[77,] 1.25231375
[78,] 1.35386953
[79,] 0.66258066
[80,] -0.04012419
[81,] 0.13035846
[82,] 0.02337438
[83,] 0.24073180
[84,] 1.05755171
[85,] 0.22323093
[86,] 0.42770626
[87,] 1.04522645
[88,] 1.04104379
[89,] 0.06935597
[90,] 0.28253073
[91,] 0.27814596
[92,] 0.62248441
[93,] 0.33540673
[94,] -0.36097409
[95,] 0.28762268
[96,] 0.09105561
[97,] 0.22695654
[98,] 0.57446378
[99,] -0.44617230
[100,] 0.25587339
[101,] 1.83841002
[102,] 1.15401555
[103,] 2.19790361
[104,] 1.43534213
[105,] 1.86157577
[106,] 2.74268509
[107,] 0.36579225
[108,] 2.29475181
[109,] 1.99998633
[110,] 2.25223216
[111,] 1.35962064
[112,] 1.59732747
[113,] 1.87761053
[114,] 1.25590769
[115,] 1.46274487
[116,] 1.58476820
[117,] 1.46651849
[118,] 2.41822770
[119,] 3.29964148
[120,] 1.25954707
[121,] 2.03091256
[122,] 0.97471535
[123,] 2.88797650
[124,] 1.32878064
[125,] 1.69505530
[126,] 1.94780139
[127,] 1.17118007
[128,] 1.01754169
[129,] 1.78237879
[130,] 1.85742501
[131,] 2.42782030
[132,] 2.29723178
[133,] 1.85648383
[134,] 1.11042770
[135,] 1.19845835
[136,] 2.78942561
[137,] 1.57099294
[138,] 1.34179696
[139,] 0.92173701
[140,] 1.84586124
[141,] 2.00808316
[142,] 1.89543421
[143,] 1.15401555
[144,] 2.03374499
[145,] 1.99147547
[146,] 1.86425786
[147,] 1.55935649
[148,] 1.51609145
[149,] 1.36820418
[150,] 0.95744849
PC2
[1,] -0.478423832
[2,] 0.671882687
[3,] 0.340766425
[4,] 0.595399863
[5,] -0.644675659
[6,] -1.484205297
[7,] -0.047485118
[8,] -0.222403002
[9,] 1.111603700
[10,] 0.467447569
[11,] -1.040205867
[12,] -0.132633999
[13,] 0.726243183
[14,] 0.958296347
[15,] -1.853846555
[16,] -2.677315230
[17,] -1.478655729
[18,] -0.487206131
[19,] -1.400327567
[20,] -1.124083597
[21,] -0.407490576
[22,] -0.921035871
[23,] -0.456813301
[24,] -0.085272854
[25,] -0.136796175
[26,] 0.623529705
[27,] -0.241354991
[28,] -0.525389422
[29,] -0.312172005
[30,] 0.336604248
[31,] 0.502856075
[32,] -0.422280389
[33,] -1.787587272
[34,] -2.143546796
[35,] 0.458665270
[36,] 0.205419224
[37,] -0.659349230
[38,] -0.590315163
[39,] 0.901161067
[40,] -0.267981199
[41,] -0.440240541
[42,] 2.329610745
[43,] 0.477501017
[44,] -0.470749613
[45,] -1.138415464
[46,] 0.708678586
[47,] -1.116688691
[48,] 0.384957230
[49,] -0.994627669
[50,] -0.009185585
[51,] -0.860091033
[52,] -0.592629362
[53,] -0.614239894
[54,] 1.748546197
[55,] 0.207725147
[56,] 0.591302717
[57,] -0.770438272
[58,] 1.846243998
[59,] -0.032118478
[60,] 1.030565784
[61,] 2.645211115
[62,] 0.063083852
[63,] 1.758832129
[64,] 0.185602819
[65,] 0.437537419
[66,] -0.507364239
[67,] 0.195656268
[68,] 0.789451008
[69,] 1.616827281
[70,] 1.298259939
[71,] -0.395247446
[72,] 0.415926887
[73,] 0.930209441
[74,] 0.414997441
[75,] 0.063200094
[76,] -0.249956017
[77,] 0.076998069
[78,] -0.330205463
[79,] 0.225173502
[80,] 1.055183583
[81,] 1.557055553
[82,] 1.567225244
[83,] 0.774661195
[84,] 0.631726901
[85,] 0.286812663
[86,] -0.842758920
[87,] -0.520308714
[88,] 1.378371048
[89,] 0.218770433
[90,] 1.324886147
[91,] 1.116288852
[92,] -0.024839814
[93,] 0.985103828
[94,] 2.012495825
[95,] 0.852873116
[96,] 0.180587142
[97,] 0.383634868
[98,] 0.154356489
[99,] 1.538637456
[100,] 0.596852285
[101,] -0.867515056
[102,] 0.696536401
[103,] -0.560133976
[104,] 0.046830701
[105,] -0.294059697
[106,] -0.797736709
[107,] 1.556289178
[108,] -0.418663020
[109,] 0.709063226
[110,] -1.914596301
[111,] -0.690443405
[112,] 0.420292431
[113,] -0.417849815
[114,] 1.158379741
[115,] 0.440794883
[116,] -0.673986887
[117,] -0.254768327
[118,] -2.548124795
[119,] -0.017721580
[120,] 1.701046715
[121,] -0.907427443
[122,] 0.569855257
[123,] -0.412259950
[124,] 0.480202496
[125,] -1.010536476
[126,] -1.004412720
[127,] 0.315338060
[128,] -0.064131184
[129,] 0.186735633
[130,] -0.560413289
[131,] -0.258418706
[132,] -2.617554417
[133,] 0.177953334
[134,] 0.291944582
[135,] 0.808606364
[136,] -0.853942542
[137,] -1.065013214
[138,] -0.421020154
[139,] -0.017165594
[140,] -0.673870645
[141,] -0.611835930
[142,] -0.687273065
[143,] 0.696536401
[144,] -0.864624030
[145,] -1.045665670
[146,] -0.385674038
[147,] 0.893692855
[148,] -0.268170747
[149,] -1.007877934
[150,] 0.024250427
PC3
[1,] 0.127279624
[2,] 0.233825517
[3,] -0.044053900
[4,] -0.090985297
[5,] -0.015685647
[6,] -0.026878250
[7,] -0.334350297
[8,] 0.088399352
[9,] -0.144592465
[10,] 0.252918268
[11,] 0.267784001
[12,] -0.093446191
[13,] 0.230140246
[14,] -0.180192423
[15,] 0.471322025
[16,] -0.030424684
[17,] 0.005326251
[18,] 0.044067686
[19,] 0.373093377
[20,] -0.132187626
[21,] 0.419885937
[22,] -0.159331502
[23,] -0.331069982
[24,] -0.034373442
[25,] -0.117599566
[26,] 0.304620475
[27,] -0.086075649
[28,] 0.206125707
[29,] 0.270244895
[30,] -0.068207276
[31,] 0.074757996
[32,] 0.269564311
[33,] -0.047070727
[34,] 0.082392024
[35,] 0.169706329
[36,] 0.224688852
[37,] 0.482919584
[38,] -0.019370918
[39,] -0.192609402
[40,] 0.175296561
[41,] -0.034778398
[42,] 0.203552303
[43,] -0.304745527
[44,] -0.308567588
[45,] -0.247604064
[46,] 0.063716370
[47,] -0.057026813
[48,] -0.139002234
[49,] 0.180886792
[50,] 0.152518539
[51,] 0.682300393
[52,] 0.093807452
[53,] 0.552157058
[54,] 0.023024633
[55,] 0.396925784
[56,] -0.123776885
[57,] -0.148472007
[58,] -0.248432992
[59,] 0.594178807
[60,] -0.537100055
[61,] 0.046634215
[62,] -0.204389093
[63,] 0.763214554
[64,] 0.068429700
[65,] -0.194282030
[66,] 0.501830204
[67,] -0.489234095
[68,] 0.301028700
[69,] 0.480693656
[70,] 0.172260719
[71,] -0.614467782
[72,] 0.264067576
[73,] 0.367182178
[74,] 0.290921638
[75,] 0.444537765
[76,] 0.471001057
[77,] 0.724727099
[78,] 0.259955701
[79,] -0.085577197
[80,] 0.318506304
[81,] 0.149482697
[82,] 0.240745761
[83,] 0.150707074
[84,] -0.104959762
[85,] -0.663028512
[86,] -0.449129446
[87,] 0.394464890
[88,] 0.685997804
[89,] -0.290605718
[90,] -0.089111491
[91,] -0.094172116
[92,] 0.020412763
[93,] 0.198724011
[94,] -0.105467721
[95,] -0.130452657
[96,] -0.128547696
[97,] -0.155691572
[98,] 0.270743347
[99,] -0.189765199
[100,] -0.091572385
[101,] -1.002044077
[102,] -0.528389994
[103,] 0.202236658
[104,] -0.163083761
[105,] -0.394307408
[106,] 0.580364827
[107,] -0.983598122
[108,] 0.649530452
[109,] 0.392675073
[110,] -0.396224508
[111,] -0.283661780
[112,] -0.023108991
[113,] -0.026250468
[114,] -0.578311891
[115,] -1.000517746
[116,] -0.636297054
[117,] -0.037306280
[118,] 0.127454475
[119,] 0.700957033
[120,] 0.266643612
[121,] -0.234015510
[122,] -0.825362161
[123,] 0.854558973
[124,] 0.005410239
[125,] -0.297454114
[126,] 0.418582432
[127,] -0.129503907
[128,] -0.336588365
[129,] -0.269754304
[130,] 0.713244682
[131,] 0.725386035
[132,] 0.491826144
[133,] -0.352966242
[134,] 0.182875741
[135,] 0.164173760
[136,] 0.541093785
[137,] -0.942695700
[138,] -0.180271551
[139,] -0.415434449
[140,] 0.012629804
[141,] -0.426902678
[142,] -0.129640697
[143,] -0.528389994
[144,] -0.337014969
[145,] -0.630301866
[146,] -0.255418178
[147,] 0.026283300
[148,] -0.179576781
[149,] -0.930278721
[150,] -0.526485033
PC4
[1,] 0.024087508
[2,] 0.102662845
[3,] 0.028282305
[4,] -0.065735340
[5,] -0.035802870
[6,] 0.006586116
[7,] -0.036652767
[8,] -0.024529919
[9,] -0.026769540
[10,] -0.039766068
[11,] 0.016675503
[12,] -0.133037725
[13,] 0.002416941
[14,] -0.019151375
[15,] 0.194081578
[16,] 0.050365010
[17,] 0.188186988
[18,] 0.092779618
[19,] 0.060891973
[20,] -0.037630354
[21,] 0.010884821
[22,] 0.059398340
[23,] 0.019582826
[24,] 0.150636353
[25,] -0.269238379
[26,] 0.043416203
[27,] 0.067454082
[28,] 0.010241084
[29,] 0.083977887
[30,] -0.107918349
[31,] -0.048027970
[32,] 0.239069476
[33,] -0.228470534
[34,] -0.048053409
[35,] 0.028926042
[36,] 0.168343905
[37,] 0.195702902
[38,] -0.136048774
[39,] -0.009705907
[40,] 0.007023875
[41,] 0.106626042
[42,] 0.288896090
[43,] -0.066379077
[44,] 0.176501717
[45,] -0.150539117
[46,] 0.139801160
[47,] -0.151722682
[48,] -0.048671707
[49,] -0.014878291
[50,] 0.049206884
[51,] 0.034717469
[52,] 0.004887251
[53,] 0.009391933
[54,] 0.065549239
[55,] 0.104387166
[56,] -0.240027187
[57,] -0.077111455
[58,] -0.040384912
[59,] -0.029779844
[60,] -0.028366154
[61,] 0.013714785
[62,] 0.039992104
[63,] 0.045578465
[64,] -0.164256922
[65,] 0.108684396
[66,] 0.104593326
[67,] -0.190869932
[68,] -0.204612265
[69,] 0.225145511
[70,] -0.051554138
[71,] -0.083006045
[72,] 0.113189079
[73,] -0.009911322
[74,] -0.273304557
[75,] 0.043313222
[76,] 0.101376117
[77,] 0.039556002
[78,] 0.066604931
[79,] -0.036318171
[80,] 0.064571834
[81,] -0.009371129
[82,] -0.032663020
[83,] 0.023572390
[84,] -0.183354200
[85,] -0.253977520
[86,] -0.109308985
[87,] 0.037084781
[88,] 0.136378719
[89,] -0.146653279
[90,] 0.008876070
[91,] -0.269753497
[92,] -0.147193289
[93,] 0.006508757
[94,] 0.019505467
[95,] -0.107043742
[96,] -0.229191812
[97,] -0.132163118
[98,] -0.019794366
[99,] 0.199278855
[100,] -0.058426315
[101,] -0.049085303
[102,] -0.040385459
[103,] 0.058986583
[104,] -0.234982858
[105,] -0.016243853
[106,] -0.101045973
[107,] -0.132679346
[108,] -0.237246445
[109,] -0.086221779
[110,] 0.104488870
[111,] 0.107500284
[112,] 0.058136869
[113,] 0.145926073
[114,] 0.098826244
[115,] 0.274738504
[116,] 0.191222383
[117,] -0.154811637
[118,] -0.272892966
[119,] 0.045037725
[120,] -0.064963167
[121,] 0.167390481
[122,] 0.027662914
[123,] -0.126911337
[124,] 0.139491837
[125,] -0.061437911
[126,] -0.217609339
[127,] 0.125001677
[128,] -0.008625505
[129,] 0.030983849
[130,] -0.207519953
[131,] -0.017863520
[132,] -0.210968943
[133,] 0.099675959
[134,] -0.185721512
[135,] -0.487849130
[136,] 0.294893130
[137,] 0.035486875
[138,] -0.214702016
[139,] 0.005220919
[140,] 0.194543500
[141,] 0.246711805
[142,] 0.468128374
[143,] -0.040385459
[144,] 0.045036251
[145,] 0.213330527
[146,] 0.387957152
[147,] 0.219456899
[148,] 0.118773236
[149,] 0.026041407
[150,] -0.162533529
##To extract data in a data frame
PCA_1_2 =as.data.frame(iris_PCA$x[ , 1:2])
head(PCA_1_2)
#head: start 6 ta data, print: 150 data show korbe
PCA_1_2 =as.data.frame(iris_PCA$x[ , 1:2])
head(PCA_1_2)
#head: start 6 ta data, print: 150 data show korbe
PCA_1_2_class = cbind(PCA_1_2,variety = iris$variety)
PCA_1_2_class
ggplot(PCA_1_2_class, aes(PC1, PC2, color= variety))+
geom_point()+
theme_minimal()
library(factoextra)
Warning: package ‘factoextra’ was built under R version 4.3.3Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa
fviz_eig(iris_PCA, addlabels = TRUE)
fviz_pca_var(iris_PCA, col.var = "contrib")
library("corrplot")
var = get_pca_var(iris_PCA)
corrplot(var$cos2)
fviz_pca_ind(iris_PCA,
geom.ind = "point",
col.ind = iris$variety,
addEllipses = TRUE)