R:每个类的特征频率图

时间:2017-09-24 20:25:01

标签: r

我的数据框类似于下面的矩阵:

r= 50
c = 10
testdata <- matrix(rbinom(r*c,1,0.5),r,c)
examplev <- rep(c(290,320,390,460,520,580,710,780,800,100001),5)
testdata <- cbind(testdata,examplev)

假设每个二进制列代表一个特征和数据类中的最后一列。我想创建一个图表,在y轴上显示1到10的特征,在x轴上显示1到10的类,显示包含特征y的数据记录有多少是类x的成员。知道如何在R中编写代码吗?

enter image description here

1 个答案:

答案 0 :(得分:1)

不是100%你要求的,因为我使用条形图而不是密度图,但这接近你想要的。

TABLE = sapply(as.data.frame(testdata[,1:10]), 
    function(x) table(x, testdata[,11])[2,])

## You will need to stretch the graphics window horizontally
par(mfrow=c(1, 10))
for(i in 1:10) { 
    barplot(TABLE[i,], horiz=TRUE, xlim=c(0,max(TABLE)), 
        las=1, xlab=rownames(TABLE)[i])

}

Boxplots