比方說,我有以下的數據幀:選擇與dplyr ::選擇()多列以數字作爲名稱
a <- runif(10)
dd <- as.data.frame(t(a))
names(dd) <- c("ID", "a", "a2", "b", "b2", "f", "XXX", "1", "4", "8")
在dplyr
,有一個很好的方式,選擇一些列。例如,選擇列一個和列˚F之間的專欄中,我可以使用
dd %>% dplyr::select(a:f)
在我的問題,數據幀的最後部分的列可能會有所不同,但他們總是有作爲名稱1到99之間的數字。但是,我似乎無法能夠做同樣的伎倆如上:
> dd %>% select(1:99)
Error: Position must be between 0 and n
> dd %>% select("1":"99")
Error: Position must be between 0 and n
這是因爲使用select()
試圖以這種方式來選擇的位置列。
我想能夠獲得˚F一個和之間的所有列的數據幀,以及與那些屬於和之間的數字標籤。這可能與select()
一起完成嗎?
有沒有像'1':'99'這樣的方法,即使列99不在這個特定的數據集中? – Theodor
@Theodor不是直接的,但是使用函數'select_'可以傳遞一個列名的數組,所以你可以像'select *(.docs)(dd)[% (1:99)])'作爲解決方法 – AlexR