Mam 2 zmienne, obie z klasy „numeric”:

> head(y)
[1] 0.4651804 0.6185849 0.3766175 0.5489810 0.3695258 0.4002567

> head(x)
[1] 59.32820 68.46436 80.76974 132.90824 216.75995 153.25551

Wykreśliłem je, a teraz chciałbym dopasować model wykładniczy do danych (i dodać go do plot), ale nie mogę znaleźć żadnych informacji o dopasowywaniu modeli do danych wielowymiarowych w R! Czy ktoś może pomóc tylko w celu ujednolicenia danych? Nie wiem nawet, od czego zacząć … Dzięki!

Komentarze

  • To trochę zagmatwane. Mówisz, że masz dwie " niezależne " zmienne (wolę " predyktor ", ale to ' nie jest ważne). Czy masz jakieś " zależne " / " zmienne odpowiedzi "? Gdyby były to obie zmienne odpowiedzi, mogę sobie wyobrazić dopasowanie parametrycznego, dwuwymiarowego rozkładu prawdopodobieństwa (z lub bez zmienne predykcyjne, od których zależały parametry rozkładu ') – lub oszacowanie gęstości jądra 2D. Być może mógłbyś wyjaśnić kontekst nieco dokładniej. (PS, kto ' osoby, które zagłosowały za pytanie, muszą wiedzieć, co to znaczy … czy ktoś ma ochotę zadzwonić?)
  • W każdym razie ' d lepiej przejdź do crossvalidated.com w przypadku takich pytań. lub do mało znanej witryny o nazwie Google. Znalazł informacje na temat dopasowywania modeli do danych wielowymiarowych. Całkiem sporo (dokładnie 4 miliony dwieście trzydzieści tysięcy)
  • Ja ' d polecam bing – jest to w końcu mechanizm decyzyjny, wyszukiwarki są więc XX wiek … wystarczy spojrzeć na Yahoo i Ask Jeeves, jak nieistotne są one dzisiaj?!?
  • @Ben Bolker – Dzięki za pomoc, usunąłem niezależność, bo nie była poprawna. To, co mam, to odległość między lokalizacjami (x) i korelacje opadów między lokalizacjami (y)
  • zwróć uwagę, że będziesz musiał użyć specjalnych metod, jeśli chcesz wyciągnąć statystyczne wnioski z tych danych, ponieważ jeśli odległości zostały obliczone na wspólnym zbiorze lokalizacji, nie są one niezależne – szukaj np dla " Test kominka "

Odpowiedź

Nie jestem do końca pewien, o co pytasz, ponieważ masz wyłączony żargon. Zakładając jednak, że zmienne nie są od siebie niezależne (gdyby były, to nie są spokrewnieni do znalezienia) Spróbuję. Jeśli x jest zmienną niezależną (lub predyktorem), a y jest zmienną zależną (lub odpowiedzią), to powinno działać.

# generate data beta <- 0.05 n <- 100 temp <- data.frame(y = exp(beta * seq(n)) + rnorm(n), x = seq(n)) # plot data plot(temp$x, temp$y) # fit non-linear model mod <- nls(y ~ exp(a + b * x), data = temp, start = list(a = 0, b = 0)) # add fitted curve lines(temp$x, predict(mod, list(x = temp$x))) 

Komentarze

  • Dziękuję za odpowiedź, zrozumiałem " niezależne ", jak zauważyłeś, nie ' nie miało sensu. Używając twojego kodu do moich danych, mogę dopasować model, ale wynik to dziesiątki linii na wykresie zamiast tylko jednej. Masz jakiś pomysł, dlaczego?
  • @sbg – Nie, przepraszam, nie mogę ' wymyślić powodu. Czy nls() pasuje do modelu?
  • Myślę, że tak, otrzymuję: Model modelu regresji nieliniowej: y ~ exp (a + b * x) dane: DF ab -0,535834 -0,002024 rezydualna suma kwadratów: 18,62 Liczba iteracji do zbieżności: 6 Osiągnięta tolerancja zbieżności: 8,08e-06
  • @sbg spróbuj posortować x zmienna: lines(sort(temp$x),predict(mod, list(x=sort(temp$x)))

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *