Właśnie czytam książkę „R in a Nutshell”. I wygląda na to, że pominąłem część, w której „.” jak w „sample.formula” zostało wyjaśnione.
> sample.formula <- as.formula(y~x1+x2)
Czy próbka jest przedmiotem z formułą pola jak w innych językach? A jeśli tak, to jak mogę dowiedzieć się, jakie inne pola / funkcje ma ten obiekt? (Deklaracja typu)
EDYCJA: Właśnie znalazłem inne mylące użycie „.”:
> svm(formula = is_spam~., data = spambase.training)
(kropka między ~.,)
.
we wzorze mówi R, aby użyć wszystkich zmiennych w ramce danychspambase.training
(opróczis_spam
) jako predyktorów. Model jest odpowiedni .y ~ 1
Odpowiedzi:
Kropka może być używana jak w zwykłym imieniu. Ma jednak dodatkową specjalną interpretację. Załóżmy, że mamy obiekt o określonej klasie:
Teraz zadeklaruj
myfunction
jako standardowy ogólny w następujący sposób:Teraz zadeklaruj funkcję
Zatem kropka ma specjalne znaczenie. Dla wszystkich obiektów z
myclass
wywołaniem klasyfaktycznie wywoła funkcję
myfunction.myclass
:Jest to powszechnie stosowane w R, najbardziej odpowiednim przykładem jest funkcja
summary
. Każda klasa ma swojąsummary
funkcję, więc gdy na przykład dopasujesz jakiś model (który zwykle zwraca obiekt z określoną klasą), musisz wywołaćsummary
i wywoła odpowiednią funkcję podsumowania dla tego konkretnego modelu.źródło
...
(która jest pojedynczym leksemem, a nie ciągiem trzech różnych) jako „kropki”, podczas gdy pytanie wyraźnie oznacza kropkę.
stosowaną w formułach i nazwach w zupełnie inny sposób, jak to poprawnie opisano we współczesnym odpowiedź Chase.Spójrz na stronie pomocy dla
?formula
wobec.
Oto odpowiednie bity:Alternatywnie, pakiety
reshape
ireshape2
używają.
i...
nieco inaczej (od?cast
):źródło
Istnieją pewne wyjątki (wysyłka metody S3), ale ogólnie jest on po prostu używany jako pomoc w czytelności i jako taki nie ma specjalnego znaczenia.
źródło
.
. Dotyczy to nazw funkcji. Jeśli chodzi o nazwy obiektów (niefunkcjonalnych), to tak, nie ma specjalnego znaczenia..
czyni go niewidocznymls()
.Kropka w próbce. Formuła nie oddziela próbki od formuły inaczej niż wizualnie. To tylko nazwa zmiennej. Nazwy zmiennych R mogą składać się z alfanumerycznych i kropek (.) I podkreślników (_) z jednym wyjątkiem. Oto aktualna zasada:
„ Prawidłowo składniowa nazwa składa się z liter, cyfr i kropki lub znaków podkreślenia i zaczyna się na literę lub kropkę, po której nie występuje cyfra. Nazwy takie jak„ .2way ”nie są prawidłowe, podobnie jak słowa zastrzeżone. ”
Drugi przypadek (tj. Przypadek is_spam ~. ) Jest inny i wyjaśniono go powyżej.
źródło