我的数据框类似于下面的矩阵:
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中编写代码吗?
答案 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])
}