【发布时间】:2016-09-22 00:13:28
【问题描述】:
我正在尝试使用两个表(“CS8_2007_2009_M&F.csv”和“CourbeDeCroissance_M&F.csv”)来制定一个有点复杂的条件表达式。
第一个表包含大约 60 000 个个体 (nocs8),它们具有体重(“体重”)和年龄(“agegestationnel”)值
在第二张表中,我有年龄(“GA”)相应的第 3、第 5 和第 10 个体重百分位数(分别为“3%”、“5%”和“10%”)。
我想根据年龄 (“GA”) 和相应的体重百分比(“3%”、“5%”和“10%”)对个人 (nocs8) 进行编码。
这是我的脚本:
mydata=fread("CS8_2007_2009_M&F.csv",
colClasses = c(rep("character", 5),
rep("numeric", 5 ),
"character",
rep("numeric", 7 ),
rep("character", 9), "numeric"))
setkey(mydata,nocs8)
weight=fread("CourbeDeCroissance_M&F.csv")
setkey(poids, GA)
正常体重
mydata[,quant:=0]
重量
mydata[, quant:=if(weight[GA==agegestationnel,`10%`]>mydata[[weight]]) 1, by = 1:nrow(mydata)]
重量
mydata[, quant:=if(weight[GA==agegestationnel,`5%`]>mydata[[weight]]) 1, by = 1:nrow(mydata)]
重量
mydata[, quant:=if(weight[GA==agegestationnel,`3%`]>mydata[[weight]]) 1, by = 1:nrow(mydata)]
我收到此消息错误:
« Error in weight["GA" == agegestationnel, "10%"] :
incorrect number of dimensions
»
我想知道这是因为我的样本量大(nocs8=60000)还是我要问的条件数量多(23GA X 3 个百分位数 = 46)?如果是这样,我该怎么办?
【问题讨论】:
标签: r