Select 个变量的重复案例
Select repeated cases from a variable
我正在使用一个名为 Visitas
的数据库。它是来自医院的访问数据库,其中变量 codeep
代表患者的代码。由于患者经常去医院,患者有不止一种措施。他们有多个度量的变量称为 result
,每次他们在 result
变量中获得结果时,在变量 codeep
中使用相同的代码患者进行编码。
我想要的是从每位患者获取 codeep
变量中的所有位置,以便从每位患者的变量 result
中获取平均值。
举个例子,我只为一个病人展示了我想要的东西。我使用了 which()
并在 return 中得到了向量,其中包含在 codeep
变量中重复此代码的位置。现在我想为所有患者做这个,自动化。
为了得到这个,我尝试了一个循环,但它不起作用,但也许是我的代码。
which(Visitas[,'codeep'] == 6208)
# One loop
for (i in Visitas[, 'codeep']) {
Visitas_TRT[i] <- which(Visitas$codeep[i] == Visitas$codeep)
}
# Double loop
for (i in Visitas[, 'codeep']) {
for (j in Visitas[, 'codeep']) {
Visitas_TRT <- which(Visitas$codeep[i] == Visitas$codeep[j])
}
}
有什么想法吗?
This is head the dataset
您似乎在寻找 ave
,您可以通过每个 codeep
.
创建一个具有 result
的 mean
的变量
Visitas <- transform(Visitas, result.M=ave(result, codeep, FUN=mean))
Visitas
# codeep today result result.M
# 1 1 1 6.4 5.866667
# 2 2 1 4.4 6.066667
# 3 3 1 5.4 4.633333
# 4 4 1 5.6 5.766667
# 5 5 1 5.4 5.066667
# 6 1 2 4.9 5.866667
# 7 2 2 6.5 6.066667
# 8 3 2 4.9 4.633333
# 9 4 2 7.0 5.766667
# 10 5 2 4.9 5.066667
# 11 1 3 6.3 5.866667
# 12 2 3 7.3 6.066667
# 13 3 3 3.6 4.633333
# 14 4 3 4.7 5.766667
# 15 5 3 4.9 5.066667
数据:
Visitas <- expand.grid(codeep=1:5, today=1:3)
set.seed(42)
Visitas$result <- round(rnorm(nrow(Visitas), 5), 1)
我正在使用一个名为 Visitas
的数据库。它是来自医院的访问数据库,其中变量 codeep
代表患者的代码。由于患者经常去医院,患者有不止一种措施。他们有多个度量的变量称为 result
,每次他们在 result
变量中获得结果时,在变量 codeep
中使用相同的代码患者进行编码。
我想要的是从每位患者获取 codeep
变量中的所有位置,以便从每位患者的变量 result
中获取平均值。
举个例子,我只为一个病人展示了我想要的东西。我使用了 which()
并在 return 中得到了向量,其中包含在 codeep
变量中重复此代码的位置。现在我想为所有患者做这个,自动化。
为了得到这个,我尝试了一个循环,但它不起作用,但也许是我的代码。
which(Visitas[,'codeep'] == 6208)
# One loop
for (i in Visitas[, 'codeep']) {
Visitas_TRT[i] <- which(Visitas$codeep[i] == Visitas$codeep)
}
# Double loop
for (i in Visitas[, 'codeep']) {
for (j in Visitas[, 'codeep']) {
Visitas_TRT <- which(Visitas$codeep[i] == Visitas$codeep[j])
}
}
有什么想法吗?
This is head the dataset
您似乎在寻找 ave
,您可以通过每个 codeep
.
result
的 mean
的变量
Visitas <- transform(Visitas, result.M=ave(result, codeep, FUN=mean))
Visitas
# codeep today result result.M
# 1 1 1 6.4 5.866667
# 2 2 1 4.4 6.066667
# 3 3 1 5.4 4.633333
# 4 4 1 5.6 5.766667
# 5 5 1 5.4 5.066667
# 6 1 2 4.9 5.866667
# 7 2 2 6.5 6.066667
# 8 3 2 4.9 4.633333
# 9 4 2 7.0 5.766667
# 10 5 2 4.9 5.066667
# 11 1 3 6.3 5.866667
# 12 2 3 7.3 6.066667
# 13 3 3 3.6 4.633333
# 14 4 3 4.7 5.766667
# 15 5 3 4.9 5.066667
数据:
Visitas <- expand.grid(codeep=1:5, today=1:3)
set.seed(42)
Visitas$result <- round(rnorm(nrow(Visitas), 5), 1)