Ich weiß, dass es bereits einige Threads zu diesem Thema gegeben hat, aber durch die ich nicht herausfinden konnte, was das Problem sein könnte - bitte vergib mir, dass ..R Anzahl der zu ersetzenden Elemente ist kein Vielfaches der Ersatzlänge/Ergebnisse jedoch korrekt
ich versuche, den Code
for (i in 1:a){
matrix$new_column[i]<-which(matrix[i,1:b-1]==matrix$col_b[i])
}
Was ich versuche zu laufen: für die Matrix von eine Linien und b Spalten, in jedem line's Spalten zu b-1, finden die eine, die den gleichen Wert wie die in Spalte enthält b (es gibt immer einen solchen Wert) und die entsprechende Spaltennummer in die * NEW_COLUMN schreiben *
hält My-Code
den Fehler zu werfenWarnung in Matrix $ NEW_COLUMN [i] < - die (Matrix [i,: Anzahl der Elemente zu ersetzen ist nicht ein Vielfaches von Ersatz Länge
Das Ergebnis ist jedoch völlig korrekt. Ich habe
versucht- die * * NEW_COLUMN Schaffung mit 0en gefüllt ersten
- die End-Indizes von a zu a-1 oder a + 1
Wie gesagt ändert, Das Ergebnis ist korrekt, aber ich denke, ich sollte die Warnmeldung nicht bekommen, wenn ich alles richtig gemacht habe, also bin ich wirklich dankbar für jeden Rat, wie ich das beheben kann.
Schließlich frage mich nicht, warum ich 1: b-1 wählte, als ich von 2 zu b-1 gehen wollte, ich sah gerade, dass wenn ich 2: b-1 verwenden würde, würde es tatsächlich beginnen Spalte 3 ..
Das ist kein Fehler, es ist eine Warnung. –
ja, tut mir leid, mein Schlechter. Aber sollte es nicht Warnungen geben, wenn ich es richtig gemacht habe? – tfp
Dies bedeutet, dass die Länge Ihres neuen Vektors nicht die gleiche Länge wie die Länge des neuen Vektors hat.Also kann etwas falsch sein, obwohl die Ergebnisse korrekt aussehen. –