У меня есть эти данные выборки экспрессии двух различных вариантов гена:Finding среза между двумя участками перекрывающихся плотности
value<-cbind(c(rnorm(100,500,90),rnorm(100,800,120)))
genotype<-cbind(c(rep("A",100),rep("B",100)))
df<-cbind(value,genotype)
df<-as.data.frame(df)
colnames(df)<-c("value","genotype")
df$value<-as.numeric(as.character(df$value))
Я нанесенными эти два варианта генотипа их выражения и пытаюсь определить оптимальное значение отсечки анализ, который проводит различие между ними:
d <- density(value)
plot(d, main="Genotypes A and B", ,type="n",xlim=c(200,1100),ylim=c(0,0.005),xlab="Units of expression",ylab="")
d1 <- density(subset(value,genotype=="A"))
polygon(d1, col = adjustcolor('gray', alpha.f = .40), border="black")
d2 <- density(subset(value,genotype=="B"))
polygon(d2, col = adjustcolor('gray', alpha.f = .40), border="black")
Очевидно, что я могу использовать «abline» функцию, чтобы найти наилучшую отсечку между двумя плотностями, но есть аккуратнее способ определить обрезание?
Таким образом, вы определяете отсечка точкой, где две плотности имеют одинаковое значение (предполагается, что имеется ровно одна такая точка), правильно? – Julius
Да, точно - где они пересекают друг друга. – Oposum
Возможный дубликат [Как найти пересечение двух плотностей с ggplot2 в R] (http://stackoverflow.com/questions/25453706/how-to-find-the-intersection-of-two-densities-with-ggplot2 -in-r) – Julius