次のデータフレームがあるとしましょう:
a <- runif(10)
dd <- as.data.frame(t(a))
names(dd) <- c("ID", "a", "a2", "b", "b2", "f", "XXX", "1", "4", "8")
にはdplyr
、多数の列を選択する便利な方法があります。たとえば、列aと列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
これは、 usingselect()
がこのように位置によって列を選択しようとするためです。
aからfまでのすべての列と、 1から99までの数字のラベルを持つデータ フレームを取得できるようにしたいと考えています。それは一度に行うことは可能select()
ですか?