在 R 中的数据框列中使用向量
Using vectors inside dataframe columns in R
我正在用 R 编程一个 classificator,我有可以有多个 classes 的情况,所以我想在同一行中同时有两个 classes 和列 somthing$classes,作为向量。我的意思是,something data.frame 的列 something$classes 应该类似于列表的 Java 或 Python 列表。这是输入 data.frame 数据的示例:
Case class class1 class2
A X Z
B Y
C X Y Z
D Y Z
我真正需要做的是将 class、class1 和 class2 作为一个名为 classes 的列,以向量作为元素,这是 data.frame 我想要的:
Case classes
A [X, Z] %<- This is a vector, not an string
B [Y]
C [X, Y, Z]
D [Y, Z]
有没有办法拥有这种 data.frame 结构?如果是这样,如何完成以及如何访问每个 classes 向量中的单个元素?
提前致谢
我们可以使用data.table
library(data.table)
setDT(df1)[, {v1 <- unlist(.SD); list(classes = list(v1[v1!='']))}, Case]
我正在用 R 编程一个 classificator,我有可以有多个 classes 的情况,所以我想在同一行中同时有两个 classes 和列 somthing$classes,作为向量。我的意思是,something data.frame 的列 something$classes 应该类似于列表的 Java 或 Python 列表。这是输入 data.frame 数据的示例:
Case class class1 class2
A X Z
B Y
C X Y Z
D Y Z
我真正需要做的是将 class、class1 和 class2 作为一个名为 classes 的列,以向量作为元素,这是 data.frame 我想要的:
Case classes
A [X, Z] %<- This is a vector, not an string
B [Y]
C [X, Y, Z]
D [Y, Z]
有没有办法拥有这种 data.frame 结构?如果是这样,如何完成以及如何访问每个 classes 向量中的单个元素?
提前致谢
我们可以使用data.table
library(data.table)
setDT(df1)[, {v1 <- unlist(.SD); list(classes = list(v1[v1!='']))}, Case]