📜  将数据框行转换为向量 - R 编程语言(1)

📅  最后修改于: 2023-12-03 15:25:19.337000             🧑  作者: Mango

将数据框行转换为向量 - R 编程语言

在 R 编程语言中,将数据框行转换为向量是一项基本的操作。本文将介绍如何使用 R 中的一些函数将数据框行转换为向量。

准备工作

我们首先需要创建一个数据框。这里我们使用 mtcars 数据集作为例子。

df <- mtcars
head(df)

输出结果如下所示:

                   mpg cyl disp  hp drat    wt  qsec vs am gear carb
Mazda RX4         21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
Mazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
Datsun 710        22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
Hornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
Hornet Sportabout 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2
Valiant           18.1   6  225 105 2.76 3.460 20.22  1  0    3    1
将一整行转换为向量

我们可以使用 $ 符号取出其中的一整行,并将其转换为向量。例如下面的代码可以将 mpg 这一列中的所有数据转换为向量:

mpg <- df$mpg
mpg

输出结果如下所示:

 [1] 21.0 21.0 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 17.8 16.4 17.3 15.2 10.4 10.4 14.7
[18] 32.4 30.4 33.9 21.5 15.5 15.2 13.3 19.2 27.3 26.0 30.4 15.8 19.7 15.0 21.4

同样的,我们也可以将其他列中的数据转换为向量。

将多个行转换为向量

我们可以使用 c() 函数将多个行的数据合并到一起,从而形成一个向量。例如下面的代码可以将前两行和后两行的 mpg 列数据合并在一起:

mpg <- c(df[1, "mpg"], df[2, "mpg"], df[nrow(df) - 1, "mpg"], df[nrow(df), "mpg"])
mpg

输出结果如下所示:

[1] 21.0 21.0 15.0 21.4

同样的,我们也可以将其他行中的数据合并为一个向量。

将多个列转换为向量

我们可以使用 cbind() 函数将多个列的数据合并到一起,从而形成一个向量。例如下面的代码可以将 mpgdisphp 三列的数据合并在一起:

mpg_disp_hp <- cbind(df$mpg, df$disp, df$hp)
mpg_disp_hp_vector <- as.vector(mpg_disp_hp)
mpg_disp_hp_vector

输出结果如下所示:

 [1]  21.0 160.0 110.0  21.0 160.0 110.0  22.8 108.0  93.0  21.4 258.0 110.0  18.7 360.0 175.0
[16]  18.1 225.0 105.0  14.3 360.0 245.0  24.4 146.7  62.0  22.8 140.8  95.0  19.2 167.6 123.0
[31]  17.8 167.6 123.0  16.4 275.8 180.0  17.3 275.8 180.0  15.2 275.8 180.0  10.4 472.0 205.0
[46]  10.4 460.0 215.0  14.7 440.0 230.0  32.4  78.7  66.0  30.4 75.7  52.0  33.9 71.1  65.0
[61]  21.5 120.1  97.0  15.5 318.0 150.0  15.2 304.0 150.0  13.3 350.0 245.0  19.2 400.0 175.0
[76]  27.3 140.8  95.0  26.0  79.0  66.0  30.4 120.3  91.0  15.8 351.0 264.0  19.7 145.0 175.0
[91]  15.0 301.0 335.0  21.4 121.0 109.0

同样的,我们也可以将其他列中的数据合并为一个向量。

总结

本文介绍了如何将数据框中的行、多个行和多个列转换为向量。学会这些操作,可以帮助您更加方便地处理数据,并最终提高数据分析的效率。