我正在努力解决过滤数据的特定方面。
我有一个表格,记录了研究过程中大约 8000 名患者的大约 300 个参数。我已经可以过滤那些没有基线读数的患者,但我正在努力排除某个变量读数数量较少的患者。
例如,我正在尝试运行一个简单的模型,该模型将胃肠道评分与一系列其他变量相关联。我需要确保的是,将零或一个读数SCOPAAUT_gastrointestinal的患者排除在外。有没有人处理过与此有关的事情?我可以索引患者数量,但从那里开始,我不确定在哪里进展。
model1 <- lmer(SCOPAAUT_gastrointestinal~Age_bl + GENDER + EDUCYRS + APPRDX_enrol +
(1 + Years_bl|PATNO), data = datasetfilteredDR)
如果没有可重复的数据,就很难衡量您到底需要什么。但是从帖子来看,您似乎只是想弄清楚如何在某个条件下过滤数据帧。这可以通过子集来完成。
假设您有一个类似这些行的数据帧:
set.seed(23)
df <- data.frame(
patient = c("A", "A", "B", "C", "A", "B", "A", "C", "A", "B"),
readings = c(sample(1:5, 10, replace = T)),
other_var = c(sample(10))
)
df
patient readings other_var
1 A 5 8
2 A 4 4
3 B 3 3
4 C 1 6
5 A 3 7
6 B 5 5
7 A 2 2
8 C 1 9
9 A 5 1
10 B 1 10
假设您想排除那些读数少于 3 的患者。然后,您可以在要筛选的变量上使用否定运算符!
和子集df
:
df_filtered <- df[!df$readings < 3, ]
df_filtered
patient readings other_var
1 A 5 8
2 A 4 4
3 B 3 3
5 A 3 7
6 B 5 5
9 A 5 1