set.seed(2025); means1 <- matrix(rnorm(2*95) +seq(1,3, length.out=2*95),
ncol=2, byrow=TRUE, dimnames=list(NULL, LETTERS[3:2]))
means1 <- rbind(means1, cbind((3:7)/2, c(6:8, -2:-3)))
rownames(means1) <- paste0("li_",sprintf(paste0("%03d"), 1:100))
Mval0 <- means1[,1] - means1[,2]
Mval1 <- matrix(means1[,1] - means1[,2], ncol=1, dimnames=list(rownames(means1), "C-B"))
set.seed(2026); pVal0 <- c(runif(95, max=0.9), (4:8)^(-4:-8))
FdrVal1 <- matrix(p.adjust(pVal0, method="BH"), ncol=1, dimnames=list(rownames(means1), "C-B"))
pVal1 <- matrix(pVal0, ncol=1, dimnames=list(rownames(means1), "C-B"))
## with separate entries ...
filt1 <- volcanoFilter(Mvalue=Mval1, pValue=pVal1) # separate values
tail(signif(filt1, 3))
## separate entries, retrieve all data for Volcano-Plot
filt2 <- volcanoFilter(Mvalue=Mval1, pValue=pVal1, signifOnly=FALSE) # separate values
tail(signif(filt2, 3))
plot(filt2[,2], -1*log10(filt2[,3]), col=c("grey","red")[1+filt2[,5]], pch=16, main="Volcano-Plot")
## simulate basic/minimal object from wrProteo
Mobj3 <- list(means=means1, BH=FdrVal1, p.value=pVal1)
filt3 <- volcanoFilter(Mobj3)
tail(signif(filt3, 3))
Run the code above in your browser using DataLab