Die Variablen aus der Funktion werden nicht in den globalen Variablen in R-Programmierung gespeichert. Schauen Sie sich den Code-Schnipsel:Variablen innerhalb der Funktion werden nicht in der globalen Umgebung in R-Programmierung gespeichert
install.packages('HMM')
library('HMM')
hmm_source <- function(){
lamba_1 <- initHMM(c("s1","s2"), c("a","b","c"), c(1,0), matrix(c(.1,.6,.9,.4),nrow = 2,ncol = 2),matrix(c(.1,.4,.3,.2,.6,.4),nrow = 2,ncol = 3))
lamba_2 <- initHMM(c("s1","s2"), c("a","b","c"), c(1,0), matrix(c(.4,.8,.6,.2),nrow = 2,ncol = 2),matrix(c(.5,.2,.4,.1,.1,.7),nrow = 2,ncol = 3))
return(list(m1=lamba_1,m2=lamba_2))
}
source1_2 <- hmm_source()install.packages('HMM')
library('HMM')
hmm_source <- function(){
lamba_1 <- initHMM(c("s1","s2"), c("a","b","c"), c(1,0), matrix(c(.1,.6,.9,.4),nrow = 2,ncol = 2),matrix(c(.1,.4,.3,.2,.6,.4),nrow = 2,ncol = 3))
lamba_2 <- initHMM(c("s1","s2"), c("a","b","c"), c(1,0), matrix(c(.4,.8,.6,.2),nrow = 2,ncol = 2),matrix(c(.5,.2,.4,.1,.1,.7),nrow = 2,ncol = 3))
return(list(m1=lamba_1,m2=lamba_2))
}
source1_2 <- hmm_source()
hier meine Funktion gibt die zwei HMM-Modelle, aber die Variablen lamba_1 und lamba_2 sind nicht in der globalen Umwelt in R. errettet ich in RStudio arbeite, obwohl ich den Code versucht, läuft in R Shell auch .. Aber es gibt mir immer den Fehler: Objekt lamba_1 nicht gefunden. Irgendeine Hilfe ?
Objekte werden so gespeichert, wie Sie sie zuweisen. Wenn Sie 'source1_2 <- hmm_source()' eingeben, ist Ihr Ergebnis eine 'liste' mit dem Namen, den Sie angegeben haben:' source1_2' – Gregor
Verwenden Sie '<< -', um Objekte innerhalb von Funktionen in der globalen Umgebung zu speichern. – count
werden sie als 'source1_2 $ m1' und' source1_2 $ m2' gespeichert. Ich würde nicht raten, die '' '' '' '' '' '' '' '' '' '' '' 'Weise zu benutzen, um sie zu überschreiben - andernfalls überschreibst du Variablen in deinem GlobalEnv. Ich glaube nicht, dass dies ein guter Anwendungsfall für Nebenwirkungen in Ihrer Funktion ist. – Chris