Fehler in der Bestellung(datastate$c) : argument 1 ist nicht ein Vektor
best <- function(state, outcome) {
data = read.csv("outcome-of-care-measures.csv", colClasses="character")
data[, 11] <- as.numeric(data[, 11])
data[, 17] <- as.numeric(data[, 17])
data[, 23] <- as.numeric(data[, 23])
if (outcome == "heart attack") {
dataset <- data[,c(2,7,11)]
} else if (outcome == "heart failure") {
dataset <- data[,c(2,7,17)]
} else if (outcome == "pneumonia") {
dataset <- data[,c(2,7,23)]
}
dataset<- na.omit(dataset)
names(dataset)<- c("a","State","c")
datastates <- split(dataset, dataset$State)
datastate <- datastates$state
order.h <- order(datastate$c)
answer <- datastate[order.h,]
answer [1,1]
}
Den Fehler bin ich immer in meinem code ist;
Fehler in der Bestellung(datastate$c) : argument 1 ist nicht ein Vektor
Ich glaube, dass es ist, weil ich nicht den code schreiben, bevor Sie es ordnungsgemäß. Den code zeigen, den Namen des Staates, dass ich in der Funktion und erstellen Sie ein Daten-set mit 3 Spalten in der Reihenfolge von der Dritten Spalte.
Sie sagen uns: zeigen Sie uns
Sie müssen, engen Sie Ihre Frage bis auf das kleinste Beispiel-code (Minimal Reproduzierbare Beispiel). Kein Punkt bei der Buchung Ihre Wand-code hier ohne dataset.
print(datastate$c)
schon. Ohne das dataset, in diesem Beispiel ist nicht reproduzierbar. Die Elemente der datastate$c
kommen aus den verschiedenen Spalten ausgewählt, die durch Ihre if..else
Leiter.Sie müssen, engen Sie Ihre Frage bis auf das kleinste Beispiel-code (Minimal Reproduzierbare Beispiel). Kein Punkt bei der Buchung Ihre Wand-code hier ohne dataset.
InformationsquelleAutor inect | 2015-01-31
Du musst angemeldet sein, um einen Kommentar abzugeben.
Error in order(datastate$c) : argument 1 is not a vector
bedeutet, dassorder()
nicht wissen, was zu tun mitdatastate$c
denn es ist nicht ein Vektor. Ich kann nicht sicher sagen, da Sie noch keine Daten, aber meine Vermutung ist, dassdatastate$c
zurückNULL
.Dein problem wahrscheinlich liegt in dem folgenden code:
Laut
?split
, "den Rückgabewert von split ist eine Liste von Vektoren enthält die Werte für die Gruppen. Die Komponenten der Liste sind die Namen der Ebenen f". In anderen Worten, Ihr Objektdatastates
hat nicht mehr die Struktur einesdata.frame
- und Ihren Versuch, aufdatastate$c
funktioniert nicht. Ich würde führen Sie die Funktion bisdatastates <- split(dataset, dataset$State)
und rufen Sie dannstr()
aufdatastates
zu bestimmen, seine Struktur.InformationsquelleAutor Richard Border