【发布时间】:2021-08-19 18:27:32
【问题描述】:
考虑一个具有两个数字和一个分类特征的数据表。我想将此数据表转换为新的数据表。该数据表的每一行都应对应于分类特征的一个值。此外,它应该包含一个列,其中包含由每个分类值的数字特征产生的平均向量加上一个包含协方差矩阵的列。此外,只能使用包含引用数字特征的列名称的对象。
似乎必须为此使用列表,例如参见R - store a matrix into a single dataframe cell。但是,这些信息对我的帮助还不够。
这是一个例子:
library(data.table)
set.seed(42)
a <- sample(1:3, 10, TRUE)
b <- rnorm(10)
d <- rpois(10, 3)
data <- data.table(a, b, d)
bd <- c("b", "d")
dat <- data[,
.(mu = mean(get(bd)),
sigma = get(cov(bd))),
by = a]
我想要的是dat 有三行,每行对应a 中的一个值。此数据表还应包含一个包含三个长度为 2 的向量的列和一个包含三个 2x2 矩阵的列。
【问题讨论】:
-
cov的使用不清楚。它需要matrix
标签: r data.table