变异/过滤与另一个数据框同名的列

问题描述 投票:0回答:1

我想做这样的事情(一个愚蠢的代表):

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
r tidyverse calculated-columns
1个回答
0
投票

是的,在这种情况下您可以使用

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
© www.soinside.com 2019 - 2024. All rights reserved.