Częściowe dopasowanie argumentu funkcji
Wiem, że dla listy częściowe dopasowanie jest wykonywane podczas indeksowania przy użyciu podstawowych operatorów$
i[[
. Na przykład:
ll <- list(yy=1)
ll$y
[1] 1
Ale wciąż jestem nowicjuszem R i to jest dla mnie nowe, częściowe dopasowanie argumentów funkcji:
h <- function(xx=2)xx
h(x=2)
[1] 2
Chcę zrozumieć, jak to działa. Jaki jest mechanizm tego? Czy to ma jakieś skutki uboczne? Chcę zrozumieć, jak ktoś może sprawdzić, czy podano argument xx?
Edytuj po komentarzu Andrie:
Wewnętrznie używa Rpmatch
algorytm do dopasowania argumentu, tutaj przykład, jak to działa:
pmatch("me", c("mean", "median", "mode")) # error multiple partial matches
[1] NA
> pmatch("mo", c("mean", "median", "mode")) # mo match mode match here
[1] 3
Ale dlaczego R ma taką funkcję? Jaka jest podstawowa ideapartial unique
pasujący?