如何在R中的矩阵中找到值和这些值的对应列
How to find the values and the corresponding column of those values in a matrix in R
所以在小范围内,假设我有 5 个患者,它们是矩阵的行。在列中,我有一些信息,如年龄、性别等。但问题是关于某些药物。所以假设我有 4 种分类药物。 1 表示患者接受了它们,否则为 0。现在对于一些患者我有这个向量 (1,1,?,?) 意味着前两个值应该是 1 并且我知道它们,但我不知道什么是“?”每位患者。
我假设它应该是一个 5 行至少 4 列的矩阵。现在,我怎样才能找到“?”的值?每行?此外,了解此值属于哪种治疗非常重要。 (我不确定这部分问题是否有意义,但我也想知道例如 (1,1,0,1) 是重复次数最多的组合还是 (1,1,0,0) 是或 ( 1,1,1,0) 或...
我对统计或数学的了解几乎为零,但情况就是这样,如果有人能解释我如何在 R 中做到这一点,我将不胜感激。
这样的事情怎么样,其中 n
是具有每个模式的观测值的数量:
library(dplyr)
dat <- data.frame(patient = LETTERS[1:20],
d1 = 1,
d2 = 1,
d3 = sample(c(0,1), 20, replace=TRUE),
d4 = sample(c(0,1), 20, replace=TRUE))
dat %>%
group_by(d1, d2, d3, d4) %>%
tally()
#> # A tibble: 4 × 5
#> # Groups: d1, d2, d3 [2]
#> d1 d2 d3 d4 n
#> <dbl> <dbl> <dbl> <dbl> <int>
#> 1 1 1 0 0 1
#> 2 1 1 0 1 6
#> 3 1 1 1 0 9
#> 4 1 1 1 1 4
由 reprex package (v2.0.1)
于 2022-02-15 创建
所以在小范围内,假设我有 5 个患者,它们是矩阵的行。在列中,我有一些信息,如年龄、性别等。但问题是关于某些药物。所以假设我有 4 种分类药物。 1 表示患者接受了它们,否则为 0。现在对于一些患者我有这个向量 (1,1,?,?) 意味着前两个值应该是 1 并且我知道它们,但我不知道什么是“?”每位患者。
我假设它应该是一个 5 行至少 4 列的矩阵。现在,我怎样才能找到“?”的值?每行?此外,了解此值属于哪种治疗非常重要。 (我不确定这部分问题是否有意义,但我也想知道例如 (1,1,0,1) 是重复次数最多的组合还是 (1,1,0,0) 是或 ( 1,1,1,0) 或...
我对统计或数学的了解几乎为零,但情况就是这样,如果有人能解释我如何在 R 中做到这一点,我将不胜感激。
这样的事情怎么样,其中 n
是具有每个模式的观测值的数量:
library(dplyr)
dat <- data.frame(patient = LETTERS[1:20],
d1 = 1,
d2 = 1,
d3 = sample(c(0,1), 20, replace=TRUE),
d4 = sample(c(0,1), 20, replace=TRUE))
dat %>%
group_by(d1, d2, d3, d4) %>%
tally()
#> # A tibble: 4 × 5
#> # Groups: d1, d2, d3 [2]
#> d1 d2 d3 d4 n
#> <dbl> <dbl> <dbl> <dbl> <int>
#> 1 1 1 0 0 1
#> 2 1 1 0 1 6
#> 3 1 1 1 0 9
#> 4 1 1 1 1 4
由 reprex package (v2.0.1)
于 2022-02-15 创建