...
PCs | Batch | Center | Day | Month | Year | Amount | Concentr. | Row | Column | Stage | Grade | Age |
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 2.2e-16 | 2.2e-16 | 2.2e-16 | 2.2e-16 | 2.2e-16 | 2.2e-16 | 0.0004486 | 5.882547e-02 | 6.881028e-02 | 0.32 | 0.27 | 0.1071 |
2 | 0.5383 | 0.3486 | 0.5577 | 0.9876 | 0.2710 | 0.04873 | 0.6482 | 0.2862026 | 0.4786892 | 0.31 | 0.10 | 0.006634 |
3 | 0.04048 | 0.05258 | 0.03756 | 0.01480 | 0.1233 | 0.1786 | 0.5335 | 0.55585676 | 0.25289498 | 0.50 | 0.35 | 0.5131 |
4 | 0.0003439 | 0.01709 | 0.0008948 | 0.0001387 | 0.5725 | 0.7225 | 0.5267 | 0.0516508987 | 0.1404578746 | 0.43 | 0.43 | 0.02168 |
It looks like removing the batch and the plate row did help some with the center effect but the plate column effect is still significantly higher. Need to remove that.
From my previous work with Brig we identified that day, month and year of shipment and center are highly correlated with batch. Therefore start by removing the batch effect. Percent variance explained after removing the batch effect:
...
Code Block |
---|
> mask<-batch!="0652" > length(mask) [1] 511 > table(mask) mask FALSE TRUE 43 468 > X<-model.matrix(~factor(batch[mask]) + adj$plate_row[mask]) > Xbcrw<-solve(t(X) %*% X) %*% t(X) %*% t(redB[,mask]) > redBR<- redB[,mask] - t(X %*% Xbcrw) |
Percent variance explained after removing the batch and the plate row effects:
The first principal component is smaller but not significantly so. Lets look again at the variables:
PCs | Batch | Center | Day | Month | Year | Amount | Concentr. | Row | Column | Stage | Grade | Age |
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 0.7905 | 0.0001809 | 6.9e-01 | 8.4e-01 | 8.2e-01 | 6.4e-01 | 9.7e-02 | 9.9e-01 | 1.2e-05 |
|
| |
2 | 1 | 0.7522 | 1.00 | 1.00 | 0.96 | 0.93 | 0.75 | 0.96 | 0.46 |
|
| |
3 | 1 | 0.03907 | 1.00 | 1.00 | 0.93 | 0.97 | 0.52 | 1.00 | 0.17 |
|
|