我想做这样的事情(一个愚蠢的代表):
iris %>%
mutate(mtcars = Sepal.Length * 7) %>%
filter(mtcars < max(mtcars$mpg))
其中第一个
mtcars
指的是 iris
中的列,而第二个 mtcars
指的是外部 data.frame。
我意识到我可以预先计算
max(mtcars$mpg)
或简单地重新标记data.frame,但我想知道是否有一种方法可以在原位显式区分两者?例如。像这样的东西:
iris %>%
mutate(mtcars = Sepal.Length * 7) %>%
filter(`mtcars` < max(EXTERNAL::mtcars$mpg))
# ^ ^
# column Not a column
是的,在这种情况下您可以使用
datasets::mtcars
iris %>%
mutate(mtcars = Sepal.Length * 7) %>%
filter(mtcars < max(datasets::mtcars$mpg))
#> Sepal.Length Sepal.Width Petal.Length Petal.Width Species mtcars
#> 1 4.7 3.2 1.3 0.2 setosa 32.9
#> 2 4.6 3.1 1.5 0.2 setosa 32.2
#> 3 4.6 3.4 1.4 0.3 setosa 32.2
#> 4 4.4 2.9 1.4 0.2 setosa 30.8
#> 5 4.8 3.4 1.6 0.2 setosa 33.6
#> 6 4.8 3.0 1.4 0.1 setosa 33.6
#> 7 4.3 3.0 1.1 0.1 setosa 30.1
#> 8 4.6 3.6 1.0 0.2 setosa 32.2
#> 9 4.8 3.4 1.9 0.2 setosa 33.6
#> 10 4.7 3.2 1.6 0.2 setosa 32.9
#> 11 4.8 3.1 1.6 0.2 setosa 33.6
#> 12 4.4 3.0 1.3 0.2 setosa 30.8
#> 13 4.5 2.3 1.3 0.3 setosa 31.5
#> 14 4.4 3.2 1.3 0.2 setosa 30.8
#> 15 4.8 3.0 1.4 0.3 setosa 33.6
#> 16 4.6 3.2 1.4 0.2 setosa 32.2