Por que subconjunto não se importa com a falta de argumento de subconjunto para quadros de dados?

Normalmente, eu me pergunto de onde vêm os erros misteriosos, mas agora minha pergunta é de onde vem uma misteriosa falta de erro.

Deixei

numbers <- c(1, 2, 3)
frame <- as.data.frame(numbers)

Se eu digitar

subset(numbers, )

(então eu quero pegar um subconjunto, mas esqueça de especificar o argumento do subconjunto da função do subconjunto), então R me lembra (como deveria):

Erro no subset.default (numbers):
o argumento "subconjunto" está ausente, sem padrão

No entanto, quando eu digito

subset(frame,)

(então a mesma coisa com umdata.frame em vez de um vetor), ele não gera um erro, mas apenas retorna o quadro de dados (completo).

O que está acontecendo aqui? Por que não recebo minha merecida mensagem de erro?

questionAnswers(1)

yourAnswerToTheQuestion