R "- argument ist mit der Länge null" wenn(Bedingung)

Sehr neu auf R, würde schätzen, wenn Sie mir sagen könnte was ich falsch mache.

Dies war mein erstes code:

count <- 0
for (i in 1:nrow(data))
{
    if(outcome[i]==data[1,i])
    inc(count) <- 1  #package Hmisc
}

wo Ergebnisse und Daten[1] sind Vektoren mit binären Werte wie zB. [1, 0, 0, 1, 1, 0..]

Bekam ich das Ergebnis "argument der Länge null' mit der if-Anweisung. Getestet werden individuell mit Zeilen, die aufeinander abgestimmt/nicht übereinstimmende, entdeckt, dass das Resultat zeigt sich nur in der letzteren.

Also ich habe mein code geändert zu:

count <- 0
for (i in 1:nrow(data))
{
    if(!is.null(outcome[i]==data[1,i]))
    inc(count) <- 1  #package Hmisc
}

Nun den Wert, der count zurückgegeben wird die Anzahl der " für " - Iterationen.

Bedeutet das nicht, das R ist-NICHT wieder einen null-Wert für JEDE übereinstimmung in den neuen code?? Wie ist das passiert? Lösungen bitte?

  • Du bist einer Schleife durch die Anzahl der Zeilen in data, aber im Vergleich mit den Werten der ersten Zeile für die verschiedenen Spalten. Wenn es tatsächlich 2-dimensional ist und Sie möchten die erste Spalte, versuchen data[i, 1].
  • Okay, das war unglaublich leichtsinnig von mir; und das ist auch das Problem zu beheben! danke.
InformationsquelleAutor sheffy17 | 2015-03-29
Schreibe einen Kommentar