回答:
data.frameが呼び出されている場合は、dplyrパッケージを使用しますdf1
。
library(dplyr)
df1 %>%
select(A, B, E)
これは%>%
パイプなしで次のように書くこともできます:
select(df1, A, B, E)
df1 %>% select(A, B, E) %>% rowMeans(.)
。次のように%>%
入力して、パイプのドキュメントを参照してください?magrittr::`%>%`
列名のベクトルを使用してサブセット化できます。subset()
特に関数、パッケージ、またはアプリケーションでプログラミングする場合、列名をオブジェクト名(例:)であるかのように扱う方法よりも、このアプローチを強く推奨します。
# data for reproducible example
# (and to avoid confusion from trying to subset `stats::df`)
df <- setNames(data.frame(as.list(1:5)), LETTERS[1:5])
# subset
df[,c("A","B","E")]
object of type 'closure' is not subsettable
。
df
。df
statsパッケージの関数でもあります。
-"A"
構文エラーです。そして?Extract
、言う「、また、選択範囲の除外にする要素/スライスを示し、負の整数になります。」i
j
...
> df[,c("A")]
[1] 1
。これは望ましくない可能性があります。を使用subset
しても、この欠点はありません。
これはsubset()
関数の役割です:
> dat <- data.frame(A=c(1,2),B=c(3,4),C=c(5,6),D=c(7,7),E=c(8,8),F=c(9,9))
> subset(dat, select=c("A", "B"))
A B
1 1 3
2 2 4
c("A", "B")
、リストではなくベクトルです。
使用できますwith
:
with(df, data.frame(A, B, E))