爲什麼dplyr::one_of()
被稱爲?所有其他select_helpers
名稱對我而言是有意義的,所以我想知道是否有我不明白的one_of()
方面。one_of()爲什麼調用它?
我對one_of()
的理解是,它只允許您使用名稱的字符向量來選擇變量,而不是將它們的名稱放入select()
調用中,但是您可以獲得所有名稱位於向量中的變量,而不僅僅是其中之一他們。那是錯的,如果這是正確的,名字one_of()
從哪裏來?
爲什麼dplyr::one_of()
被稱爲?所有其他select_helpers
名稱對我而言是有意義的,所以我想知道是否有我不明白的one_of()
方面。one_of()爲什麼調用它?
我對one_of()
的理解是,它只允許您使用名稱的字符向量來選擇變量,而不是將它們的名稱放入select()
調用中,但是您可以獲得所有名稱位於向量中的變量,而不僅僅是其中之一他們。那是錯的,如果這是正確的,名字one_of()
從哪裏來?
我想到的方式是select()
最終評估爲邏輯向量。因此,如果使用starts_with
,它會遍歷數據框中的變量,並詢問變量名是否以正確的字符集開始。 one_of
做了同樣的事情,但詢問變量名是否是字符向量中列出的名稱之一。但正如他們所說,命名事情很難!
one_of
允許猜測或子集匹配
比方說,我知道,一般我的列名來自c("mpg","cyl","garbage")
,但我不知道哪些列會因爲互動性的存在/反應
mtcars %>% select(one_of(c("mpg","cyl","garbage")))
求值,但提供的消息
Warning message:
Unknown variables: `garbage`
相反
mtcars %>% select(mpg, cyl, garbage)
不評估,並給出了錯誤
Error in overscope_eval_next(overscope, expr) :
object 'garbage' not found
我覺得可以回答,唯一的人是dplyr'的'開發商。嘗試通過電子郵件發送維護者(「dplyr」)。 –