ich diese Funktion in R zu schaffen, die Normalisierung schaffen. In data2
, YearlyIncome
Spalte hat große Differenz vom niedrigsten Wert zum höchsten Wert. Ich möchte Normalisierung convert Wert von 0 bis 1Funktion Fehler in R, nicht-numerisches Argument Binäroperators
Die Wertewerte Funktion gelten YearlyIncome
überschrieben.
> x <- data2$YearlyIncome
> a <- min(x)
> b <- max(x)
> fun <- function(x){ (x - a)/(b - a) }
> fun(data$YearlyIncome)
Error in data$YearlyIncome : object of type 'closure' is not subsettable
> fun <- function(x){ (x - min(x))/(max(x) - min(x)) }
> fun(data2[1])
Show Traceback
Rerun with Debug
Error in FUN(X[[i]], ...) :
only defined on a data frame with all numeric variables
But I got this error:
>Error in x - a : non-numeric argument to binary operator
Was mache ich jetzt?
Ich antwortete nur diese Frage per E-Mail, hat es beheben nicht Ihr Problem? Zeigen Sie uns den vollständigen 'data2' Datenrahmen. –
Ich würde 'fun (data2 [, 1])' verwenden, da 'data2 [1]' immer noch ein data.frame ist. Überprüfen Sie auch die 'str (data2)', um zu sehen, ob die erste Spalte eine numerische Variable ist. Ich habe mit einem Beispiel Daten getestet und es funktioniert für mich. – akrun
@akun so akun können Sie Ihre Antwort ändern, um meine alten Fehler zu ersetzen? wie ich gerade verloren bin, was sollte sein, nachdem ich meine Funktion definieren Spaß <- Funktion (x) {(x - min (x))/(max (x) - min (x))}? – Lee