Ich möchte über die Verwendung einer temporären Variable, um die k
-te Zeile der Matrix zu ersetzen fragen.Ersetzen der `k`-ten Zeile einer Matrix mit Null in Rcpp
Ich möchte eine Reihe von X
durch Null ersetzt werden.
Also, ich habe eine Kopie von X
Ynew1
, genannt erstellt und in jeder Iteration der Wert von Ynew1
durch X
(erster Wert) aktualisiert. Aber in meinem Code werden nicht nur die Zeilen Ynew1
durch 0 ersetzt, sondern auch die X
. Leider ist das Ergebnis Ynew1
ist Matrix alle Null (ich erwartete das Ergebnis nur letzte Zeile hat Nullwert). Dies ist der Code:
cppFunction('
NumericMatrix cobo(NumericMatrix X){
int n = X.nrow();
NumericMatrix Ynew1(n,1);
for (int k=0;k<n;k++){
Ynew1 = X;
for(int i=0;i<n;i++){
Ynew1(k,i)=0;
}
}
return(Ynew1);
}
')