如何使用R中的mutate向数据框中添加新列?

R 中 dplyr 包的 mutate 功能可以帮助我们向数据框中添加新列,使用 mutate 的好处是我们可以在添加过程中决定新列的位置。例如,如果我们有一个名为 df 的数据框,其中包含三列 x、y、a,那么我们可以使用 mutate 函数在 y 之后添加一个新列 z。要了解如何完成,请查看以下示例。

示例 1

考虑以下数据框 -

> x1<-rpois(20,2)

> x3<-rpois(20,5)

> df1<-data.frame(x1,x3)

> df1

输出结果
   x1 x3

1  2  3

2  1  7

3  1  6

4  5  6

5  2  7

6  5  2

7  1  7

8  2  5

9  1  4

10 2  7

11 2  3

12 1  6

13 3  5

14 3  4

15 2  7

16 3  7

17 6  7

18 2  9

19 1  5

20 1  5

加载 dplyr 包并在 df1 中的 x1 之后添加一个新列 x2 -

> library(dplyr)

> df1%>%mutate(x2=rpois(20,1),.after=x1)

输出结果
   x1 x2 x3

1  2  0  3

2  1  0  7

3  1  1  6

4  5  0  6

5  2  1  7

6  5  0  2

7  1  1  7

8  2  1  5

9  1  0  4

10 2  1  7

11 2  0  3

12 1  1  6

13 3  1  5

14 3  1  4

15 2  1  7

16 3  4  7

17 6  1  7

18 2  2  9

19 1  1  5

20 1  4  5

例2

> y1<-rnorm(20)

> y2<-rnorm(20)

> y4<-rnorm(20)

> df2<-data.frame(y1,y2,y4)

> df2

输出结果
       y1           y2         y4

1   1.21750225  -1.33082010  0.7365231

2   0.24052365  -1.19657893 -0.7325931

3   0.82363925  -0.03890292 -0.3103461

4  -0.28315390  -0.20730053 -1.0066420

5  -0.56196875  -0.41592524  0.4996899

6   0.90983596   0.66105140 -0.9552844

7   1.14413650   1.20610045  0.9542341

8   0.03566065   1.31518070  0.2722798

9   1.72309925   0.55267260  0.3036829

10  1.27783338  -0.61818175 -0.2573076

11  0.22074289   1.23057901  0.5180043

12  1.60663571  -1.00737269  1.1614623

13 -0.75813279  -0.36594209  0.3923075

14 -0.31492265   1.30409915 -0.2759040

15 -1.03101619   0.15687986  0.8609099

16 -0.37968676  -0.04247421 -0.7490176

17 -1.90078740  -0.61468534  1.0015994

18 -0.76753148   0.21451207 -0.1875631

19 -0.36281597  -0.94474847 -1.1014309

20 -1.90049600  -0.20750306  2.1602226

在 df2 中的 y2 之后添加一个新列 y3 -

> df2%>%mutate(y3=rnorm(20,10,0.5),.after=y2)
输出结果
      y1           y2          y3         y4

1   1.21750225  -1.33082010  8.801898   0.7365231

2   0.24052365  -1.19657893  9.592606  -0.7325931

3   0.82363925  -0.03890292  10.088155 -0.3103461

4  -0.28315390  -0.20730053  9.297835  -1.0066420

5  -0.56196875  -0.41592524  9.463427   0.4996899

6   0.90983596   0.66105140  9.494079  -0.9552844

7   1.14413650   1.20610045  9.689292   0.9542341

8   0.03566065   1.31518070  10.664904  0.2722798

9   1.72309925   0.55267260  10.778179  0.3036829

10  1.27783338  -0.61818175  9.872532  -0.2573076

11  0.22074289   1.23057901  9.301869   0.5180043

12  1.60663571  -1.00737269  10.176794  1.1614623

13 -0.75813279  -0.36594209  9.367227   0.3923075

14 -0.31492265   1.30409915  11.086966 -0.2759040

15 -1.03101619   0.15687986  9.082294   0.8609099

16 -0.37968676  -0.04247421  9.547622  -0.7490176

17 -1.90078740  -0.61468534  9.694575   1.0015994

18 -0.76753148   0.21451207  10.583576 -0.1875631

19 -0.36281597  -0.94474847  10.075352 -1.1014309

20 -1.90049600  -0.20750306  10.106721 2.1602226

以上是 如何使用R中的mutate向数据框中添加新列? 的全部内容, 来源链接: utcz.com/z/359610.html

回到顶部