将数据帧转换为r中带有数字向量的列表

将数据帧转换为r中带有数字向量的列表,r,list,numeric,R,List,Numeric,我想将数据集中的值转换为数值列表 以下是一个示例数据集: df <- data.frame( a = c(5.5, 6, 7), b = c(1.1, 2.5, 3.5)) # convert dataframe to list df.list <- split(df, seq(nrow(df))) 有人有什么想法吗 谢谢 我们可以从base R使用asplit。将边距指定为1表示行,2表示列分割 out <- lapply(asplit(unname(df),

我想将数据集中的值转换为数值列表

以下是一个示例数据集:

df <- data.frame(
  a = c(5.5, 6, 7),
  b = c(1.1, 2.5, 3.5))

# convert dataframe to list
df.list <- split(df, seq(nrow(df)))

有人有什么想法吗


谢谢

我们可以从
base R
使用
asplit
。将
边距
指定为1表示行,2表示列分割

out <- lapply(asplit(unname(df), 1), as.vector)
str(out)
#List of 3
#$ : num [1:2] 5.5 1.1
#$ : num [1:2] 6 2.5
#$ : num [1:2] 7 3.5

从OP的
拆分
,我们可以
取消列出
列表元素

out3 <- lapply(unname(df.list), unlist, use.names = FALSE)
identical(out, out3)
#[1] TRUE

out3感谢您的快速恢复。伟大的解决方案。我选了第一个。
out2 <- do.call(c, apply(unname(df), 1, list)) 
identical(out, out2)
#[1] TRUE
out3 <- lapply(unname(df.list), unlist, use.names = FALSE)
identical(out, out3)
#[1] TRUE