下面有一个数据框,实际上它实际上有更多列,我只选择最后两列。
df <- read.table(text="
date1 date2 date3
1 NA 2016-12-01 2016-12-01
2 2017-01-01 2018-10-01 2016-12-01
3 2016-12-01 NA 2016-12-01
4 NA NA 2016-12-01
", header=TRUE)
不指定列名怎么办?
df %>%
select(date2, date3)
答案 0 :(得分:3)
您可以将l_Element = $("#pve"); //1st iteration
l_Element = $("#tutorial"); //2nd iteration
l_Element = $("#donation_home"); //3rd iteration
l_Element = $("#register"); //4th iteration
l_Element = $("#account_top"); //5th iteration
l_Element = $("#races"); //6th iteration
与select
一起使用以获取最后2个列名
tail
在基数R中是
library(dplyr)
df %>% select(tail(names(.), 2))
# date2 date3
#1 2016-12-01 2016-12-01
#2 2018-10-01 2016-12-01
#3 <NA> 2016-12-01
#4 <NA> 2016-12-01
答案 1 :(得分:2)
聚会迟到了。只是为了记录,tidyverse
中有一种方便的方法来选择最后一列:
library(tidyverse)
df %>%
select(last_col(offset = 1), last_col())
date2 date3
1 2016-12-01 2016-12-01
2 2018-10-01 2016-12-01
3 <NA> 2016-12-01
4 <NA> 2016-12-01
由 reprex package (v0.3.0) 于 2021 年 1 月 20 日创建
直接选择第一列:
> df %>%
+ select(1,2)
date1 date2
1 <NA> 2016-12-01
2 2017-01-01 2018-10-01
3 2016-12-01 <NA>
4 <NA> <NA>
答案 2 :(得分:0)
没有dplyr:
df.minus.2.columns <- df[,c(-1,-2)]
抱歉,不知道如何使用dplyr。
答案 3 :(得分:0)
我们可以只使用ncol
df[(ncol(df)-1):ncol(df)]
# date2 date3
#1 2016-12-01 2016-12-01
#2 2018-10-01 2016-12-01
#3 <NA> 2016-12-01
#4 <NA> 2016-12-01
或使用select_at
library(tidyverse)
df %>%
select_at((ncol(.)-1) : ncol(.))