如何使用NA索引从数据框中选择列时创建空列?

时间:2017-06-01 19:13:02

标签: r dataframe

这就是我的意思:

indexes=c(1,NA,4)

现在,如果我执行以下操作,显然会因为NA而出错:

mpg[,indexes]

因此对于NA索引我需要一个空列,换句话说我想看:

manufacturer  unknown   year
     audi        ""     1999
     audi        ""     1999
     ...         ...     ...

1 个答案:

答案 0 :(得分:3)

您可以将tibble:add_column用于此目的;我在这里使用虹膜数据库:

df <- iris[,c(1,4)]
V2df <- tibble::add_column(df, unknown = "", .after = 1)

您也可以使用dplyr::mutate

require(dplyr)
V2df <- mutate(iris[,c(1,4)], unknown = "")[,c(1, 3, 2)]

输出将是:

> (head(V2df))

#   Sepal.Length unknown Petal.Width 
# 1          5.1                 0.2 
# 2          4.9                 0.2 
# 3          4.7                 0.2 
# 4          4.6                 0.2 
# 5          5.0                 0.2 
# 6          5.4                 0.4