Ho 2 variabili, entrambe della classe “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

Li ho tracciati e ora vorrei adattare un modello esponenziale ai dati (e aggiungerlo al plot) ma non riesco a trovare alcuna informazione sulladattamento dei modelli ai dati multivariati in R! Solo per dati univariati, qualcuno può aiutare? Non so nemmeno da dove cominciare … Grazie!

Commenti

  • Questo crea un po di confusione. Dici di averne due " indipendenti " variabili (preferisco " predittore ", ma ' non è importante). Hai " dipendente " / " response " variabili? Se queste fossero entrambe le variabili di risposta, posso immaginare di adattare una distribuzione di probabilità parametrica bivariata (con o senza variabili predittive da cui dipendevano i parametri della distribuzione ') oppure una stima della densità del kernel 2D. Forse potresti spiegare un po di più il contesto. (PS chiunque ' vota la domanda deve sapere cosa significa … a qualcuno interessa intervenire?)
  • In ogni caso, ' d meglio andare a crossvalidated.com per tali domande. o a un oscuro sito web chiamato Google. Ha trovato informazioni sulladattamento dei modelli ai dati multivariati. Abbastanza (4 milioni duecentotrentamila per lesattezza)
  • ' consiglio bing: dopotutto è un motore decisionale, i motori di ricerca lo sono quindi 20 ° secolo … guarda Yahoo e Ask Jeeves, quanto sono irrilevanti oggi?!?
  • @Ben Bolker – Grazie per laiuto, ho eliminato lindipendente, perché non era corretto. Quello che ho è la distanza tra le posizioni (x) e le correlazioni delle precipitazioni tra le posizioni (y)
  • nota che dovrai usare metodi speciali se vuoi fare inferenze statistiche su questi dati, perché se le distanze sono stati calcolati su un insieme comune di posizioni, non sono indipendenti – ricerca ad es per " Test Mantel "

Risposta

Non sono completamente sicuro di quello che stai chiedendo, perché il tuo gergo è sbagliato. Ma supponendo che le tue variabili non siano indipendenti luna dallaltra (se lo fossero, allora non ci sono relazioni da trovare) Ci proverò. Se x è la tua variabile indipendente (o predittore) e y è la tua variabile dipendente (o risposta), allora dovrebbe funzionare.

# 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))) 

Commenti

  • grazie per la tua risposta, ho preso la parola " indipendente ", come hai sottolineato, ' non aveva senso. Utilizzando il codice per i miei dati posso adattare il modello ma il risultato sono dozzine di linee nel grafico invece di una sola. Qualche idea sul perché?
  • @sbg – No, scusa, non posso ' pensare a un motivo. nls() si adatta a un modello?
  • Penso di sì, ottengo: Modello modello di regressione non lineare: y ~ exp (a + b * x) dati: DF ab -0.535834 -0.002024 somma dei quadrati residua: 18.62 Numero di iterazioni per la convergenza: 6 Tolleranza di convergenza raggiunta: 8.08e-06
  • @sbg prova a ordinare il tuo x variabile: lines(sort(temp$x),predict(mod, list(x=sort(temp$x)))

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *