読者です 読者をやめる 読者になる 読者になる

Rのパイプ処理が使えない?

環境はWindows10 & R-3.3.3
原因は

Help on topic 'filter' was found in the following packages:
Return rows with matching conditions.
(in package dplyr in library C:/R-3.3.3/library)
Linear Filtering on a Time Series
(in package stats in library C:/R-3.3.3/library)

これはダメ

> mtcars %>% filter(cyl==8)
 filter(., cyl == 8) でエラー:  オブジェクト 'cyl' がありません 

これはOK

> mtcars %>% dplyr::filter(cyl==8)
    mpg cyl  disp  hp drat    wt  qsec vs am gear carb
1  18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2
2  14.3   8 360.0 245 3.21 3.570 15.84  0  0    3    4
3  16.4   8 275.8 180 3.07 4.070 17.40  0  0    3    3
4  17.3   8 275.8 180 3.07 3.730 17.60  0  0    3    3
5  15.2   8 275.8 180 3.07 3.780 18.00  0  0    3    3
6  10.4   8 472.0 205 2.93 5.250 17.98  0  0    3    4
7  10.4   8 460.0 215 3.00 5.424 17.82  0  0    3    4
8  14.7   8 440.0 230 3.23 5.345 17.42  0  0    3    4
9  15.5   8 318.0 150 2.76 3.520 16.87  0  0    3    2
10 15.2   8 304.0 150 3.15 3.435 17.30  0  0    3    2
11 13.3   8 350.0 245 3.73 3.840 15.41  0  0    3    4
12 19.2   8 400.0 175 3.08 3.845 17.05  0  0    3    2
13 15.8   8 351.0 264 4.22 3.170 14.50  0  1    5    4
14 15.0   8 301.0 335 3.54 3.570 14.60  0  1    5    8

ちなみにデータフレームから特定の列をベクトルとして抽出するのに難渋した。
以下の二つはデータフレームとして抽出される

iris["Sepal.Length"]
iris %>% select(Sepal.Length)

以下のようにすればベクトルとして抽出できる

iris$Sepal.Length
iris[["Sepal.Length"]]
iris %>% getElement("Sepal.Length")

パイプ処理ってややこしい。