如何在其他数据框列之间添加新列? [英] How to add a new column between other dataframe columns?

查看:306
本文介绍了如何在其他数据框列之间添加新列?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在我的数据框中添加一个带有NA的列:

  AB 
1 14379 32094
2 151884 174367
3 438422 449382

但是我需要它位于col。 A和B,如下所示:

  ACB 
1 14379 NA 32094
2 151884 NA 174367
3 438422 NA 449382

我知道如何添加col。 C后。 B,但这对我没有帮助...任何人都知道该怎么办?谢谢!!!

解决方案

在两个步骤中,您可以重新排列列:

  dat $ C<  -  NA 
dat < - dat [,c(A,C,B)]
ACB
1 0.596068 NA -0.7783724
2 -1.464656 NA -0.8425972

你也可以使用 append

  dat<  -  data.frame = rnorm(2),B = rnorm(2))
as.data.frame(append(dat,list(C = NA),after = 1))

ACB
1 -0.7046408 NA 0.2117638
2 0.8402680 NA -2.0109721


I want to add a new column with "NA"s in my dataframe:

     A       B
1    14379  32094
2   151884  174367
3   438422  449382

But I need it to be located between col. A and B, like this:

     A       C      B
1    14379   NA    32094
2   151884   NA    174367
3   438422   NA    449382

I know how to add col. C after col. B, but that is not helpful to me... Anyone know how to do it? Thanks!!!

解决方案

In 2 steps, you can reorder the columns:

dat$C <- NA
dat <- dat[, c("A", "C", "B")]
         A  C          B
1  0.596068 NA -0.7783724
2 -1.464656 NA -0.8425972

You can also use append

dat <- data.frame(A = rnorm(2), B = rnorm(2))
as.data.frame(append(dat, list(C = NA), after = 1))

           A   C          B
1 -0.7046408  NA  0.2117638
2  0.8402680  NA -2.0109721

这篇关于如何在其他数据框列之间添加新列?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆