【发布时间】:2017-03-06 22:14:15
【问题描述】:
我在尝试使用 sample 函数来完成我的任务时有点卡住,即从因子的每个级别中抽取 n 个随机行并基于此创建一个新变量,另一个变量的值。
一个简化的例子:
Subject = c("100","100","100","100", "100", "200", "200", "200", "200", "200")
Condition = c("Blue","Blue","Blue","Blue", "Blue", "Blue", "Blue", "Blue", "Blue", "Blue")
Response = rnorm(10)
df = data.frame(Subject,Condition, Response)
这里的目标是为Subject 的每个级别抽取 3 个随机行,创建一个新变量,比如说Condition.Rand,其中随机选择的行标记为“红色”,其余的行标记为任何值在Condition - 在这种情况下,“蓝色”。因此,对于每个Subject,Condition.Rand 的 60% 将标记为“红色”,40% 将标记为“蓝色”。
为了清楚起见,我希望 恰好 3 个随机行(或 5 个观察值的 60%)为主题 100 标记为“红色”,并且 完全 3 个随机行标记为主题 200 的“红色”。
谢谢!
【问题讨论】: