Ich habe diese diff_rc Matrix:R ColProds und mindestens einer Spalte einer Matrix
diff_rc
[,1] [,2] [,3]
[1,] 1 0.043131541 0.079957068
[2,] 2 0.079957068 0.074712332
[3,] 3 0.074712332 0.041978947
[4,] 4 0.041978947 -0.003661470
[5,] 5 -0.003661470 -0.047627302
[6,] 6 -0.047627302 -0.077841351
[7,] 7 -0.077841351 -0.092244072
[8,] 8 -0.092244072 -0.091280341
[9,] 9 -0.091280341 -0.075395031
[10,] 10 -0.075395031 -0.045033013
[11,] 11 -0.045033013 -0.003151946
[12,] 12 -0.003151946 0.037239385
[13,] 13 0.037239385 0.060619410
[14,] 14 0.060619410 0.051466559
[15,] 15 0.051466559 -0.005740738
ich diesen Code erstellt haben, um die Änderung der Zeichen fro die raws zur Überprüfung.
x_loc <- red_curve$x[diff_rc[which(rowProds(diff_rc[, 2:3]) < 0), 1]] #return index "index"
y_loc <- red_curve$y[diff_rc[which(rowProds(diff_rc[, 2:3]) < 0), 1]]
Dies sind die Ergebnisse
[1] 4 12 15
> y_loc
[1] 0.041978947 -0.003151946 0.051466559
> diff_rc
1- Mein Problem ist, dass ich die Vorzeichenwechsel in der Spalte überprüfen möchte, wo [2]. Zum Beispiel ändert sich das Vorzeichen von 4 zu 5 und von 12 zu 13. Es ging von + ve nach -ve oder umgekehrt. nur in der zweiten Spalte. Ich diesen Code versucht, funktioniert aber nicht für die Matrix
> colProds(diff_rc[,2])
Error in double(length = n) : invalid 'length' argument
In addition: Warning message:
Argument 'x' is of class ‘numeric’, but should be a matrix. The use of a ‘numeric’ is not supported, the correctness of the result is not guaranteed, and will be defunct (produce an error) in a future version of matrixStats. Please update your code according
2- Nach der Änderung des Zeichens überprüft, ich brauche den Minimalwert der beiden Elemente zurückzukehren. eg (-,003661470) sollte der zurückgegebene Wert von Spalte 4 und 5
Sie müssen sicherstellen, fallen Sie nicht die Matrix Dimensionen ersetzen, dh verwenden 'colProds (diff_rc [ , 2, drop = FALSE]) '. – HenrikB
> numerisch (0) Gibt es eine Möglichkeit, erste und letzte Indizes zu ignorieren? – user91