首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >治疗随机化

治疗随机化
EN

Stack Overflow用户
提问于 2013-04-30 06:51:07
回答 1查看 86关注 0票数 1

我有一个8行12列的矩阵,随机分配10个不同的处理,9个重复,最后一个处理只有6个重复。代码可能是多余的,但这是第一次想到并起作用的想法。我只想有一个计划,让我以后可以在实验室里随心所欲,以免出错:

代码语言:javascript
复制
library(ggplot2)
library(RColorBrewer)
library(reshape2)
library(scales)


replicates<-c(rep(seq(1:11),c(rep(9,10),6)));replicates
dimna<-list(c("A","B","C","D","E","F","G","H"),seq(1,12,1))
plate<-array(sample(replicates),dim=c(8,12),dimnames=dimna);plate
platec<-melt(plate);platec

guide<-ggplot(platec,aes(Var2,Var1,fill=factor(value))) + geom_tile()+geom_text(aes(fill=factor(value),label=value)) + ylim(rev(levels(platec$Var1))) + theme_bw() + theme(panel.grid.major.y=element_blank(),panel.grid.minor.y=element_blank(),panel.grid.major.x=element_blank(), axis.text.x=element_text(size=10), axis.title.y=element_blank(), axis.text.y=element_text(size=12)) + scale_fill_brewer(name="",palette="Spectral") + scale_x_continuous("",labels=c(seq(1,12,1)),breaks=c(seq(1,12,1)));guide

然而,现在假设我对随机矩阵进行多次测量。对于数据处理,我需要在矩阵中识别处理和复制。我可以在列的末尾得到这些数据:

代码语言:javascript
复制
A1  A2  A3  A4  A5  A6  A7  A8
0.12    0.2 0.124   0.14    0.4 0.18    0.46    0.47
0.13    0.21    0.6 0   0   0.58    0.4 0.2
0.15    0.248   0.58    0.4 0.2 0.248   0.2 0.18
0.18    0.46    0.47    0.3 0.21    0.2 0.21    0.58
0.1784  0.14    0.95    0.7 0.248   0.21    0.248   0.248

。。。

或排在一起的时尚:

代码语言:javascript
复制
A1  0.12    0.13    0.15    0.18    0.1784
A2  0.2 0.21    0.248   0.46    0.14
A3  0.124   0.6 0.58    0.47    0.95
A4  0.14    0   0.4 0.3 0.7
A5  0.4 0   0.2 0.21    0.248
A6  0.18    0.58    0.248   0.2 0.21
A7  0.46    0.4 0.2 0.21    0.248
A8  0.47    0.2 0.18    0.58    0.248

..。

R中是否有一种方法可以将随机矩阵与我收集的数据联系起来,我甚至不知道如何开始。我真的很抱歉连尝试都没有,但我真的不知道该怎么开始

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-30 07:04:38

我想我知道你在问什么..。如果这不合理的话请告诉我。首先,您需要有一个设计数据--让我们制作一个虚拟盘子:

代码语言:javascript
复制
Wells <- paste0(rep(LETTERS[1:8],each=12), rep(1:12, times = 8))
design <- data.frame(Wells, ID = sample(letters[1:10], 96, replace = TRUE))

然后,当你得到你的结果时,假设它是以数据格式(你的“行方式?”),你可以把它们合并在一起:

代码语言:javascript
复制
#dummy result data
result <- data.frame(Wells, measure = rnorm(96, 0.5))
result_whole <- merge(design, result)
head(result_whole)
#  Wells ID    measure
#1    A1  j -0.4408472
#2   A10  d -0.5852285
#3   A11  d  1.0379943
#4   A12  e  0.6917493
#5    A2  g  0.8126982
#6    A3  b  2.0218953

如果你保持你的设计整洁,这是非常简单的。然后,您可以标记结果(在本例中为measure),但是要跟踪所有这些结果。

我希望这能解决你的问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16293926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档