将数据帧的一行转换为向量

我想从一行数据框中创建一个向量。但我不想要行&列名称。我试过几件事情,但没有运气。

这是我的数据框:

> df <- data.frame(a=c(1,2,4,2),b=c(2,6,2,1),c=c(2.6,8.2,7.5,3))
> df
  a b   c
1 1 2 2.6
2 2 6 8.2
3 4 2 7.5
4 2 1 3.0

我试过了:

> newV <- as.vector(df[1,])
> newV
  a b   c
1 1 2 2.6

但我真的想要的东西看起来像:

> newV <- c( 1,2,2.6)
> newV
[1] 1.0 2.0 2.6

任何帮助,非常感谢。

最佳答案
从数据帧中提取单个行时,将获得一行数据帧。将其转换为数字向量:

as.numeric(df[1,])

如@Roland建议,unlist(df [1,])将把一行数据帧转换为数字向量而不删除名称。因此,unname(unlist(df [1,]))是另一个更明确的方法来获得相同的结果。

转载注明原文:将数据帧的一行转换为向量 - 代码日志