eingegeben werden Ich verwende eine Stichprobenmethode zu einem Daten über 700000 Zeile und 5 Spalten für den vollständigen Datensatz. Die Spalten sind, x1; x2; x3; x4; y.
Nachdem ich die Methode in Matlab für die Sampling-Methode verwendet habe, habe ich rund 400000 Stichproben-Datensatz. Das Problem ist jedoch, dass die Methode nicht das "y" abgetastet hat, was bedeutet, dass "y" im vollständigen Datensatz und getrennt von x1; x2; x3; x4 ist. Seit Wochen habe ich versucht, den Code wieder herauszufinden und immer noch das "y" wird nicht abgetastet. Daher muss ich einen anderen Weg finden, um den Datensatz anzupassen. Die Sampling-Methode hat den gesamten Datensatz nicht randomisiert, deshalb ist es besonders in Ordnung, aber die Sampling-Methode entfernt ein paar Datensätze. Dies ist der Screenshot der DatenWie eingegebene fehlende Daten aus dem vollständigen Dataset in R
So ist die über dem Screenshot ist, wir von der „FULL DATASET“ sehen können, nimmt das abgetastete nur wenige Daten. Die hervorgehobene blaue Farbe von "FULL DATASET" sind die Daten, die in "Sampled" aufgenommen wurden, während die schwarze Textfarbe in "FULL DATASET" entfernt wurde. Aus diesem Grund sind keine Daten aus der schwarzen Textfarbe im vollständigen Datensatz in "Sampled" enthalten. Von der "Sampled" fehlt das Y, ich kann das manuell ausfüllen, aber es würde sehr lange dauern, da die gesampelten Daten einen Datensatz von 400000 haben. Also, wie kann ich das "Y" in "Sampled" aus dem "Full Dataset" ausfüllen, die mit R Datenrahmen abgetastet wurden?
aktualisieren
inputdata <- function(pop,sam)
{
dfpop <- data.frame(pop)
dfsam <- data.frame(sam)
ndfpop = nrow(dfpop)
ndfsam = nrow(dfsam)
for (i in 1:ndfsam) {
if(dfsam[i,1] == dfpop[i,1] && dfsam[i,2] == dfpop[i,2] && dfsam[i,3] == dfpop[i,3] && dfsam[i,4] == dfpop[i,4]) {
completesam<- print(dfpop[i,5] == dfsam[i,5])
}
}
write.csv(completesam, file = "D://completesampling.csv")
}
Früher verwendete ich für diesen Fall Excel, aber da die Arbeit R bevorzugen verwendet i statt R. Die Funktion FALSE zurück entlang der Reihe, und ich habe mehrere Ausdruck in der IF
[1] FALSE
[1] FALSE
[1] FALSE
[1] FALSE
[1] FALSE
[1] FALSE
[1] FALSE
[1] FALSE
[1] FALSE
[1] FALSE
Haben Sie eine Idee haben, ist, welcher Teil des Codes fehlt?
Bitte sehen Sie diese Frage: http://stackoverflow.com/questions/1299871/how-to- join-merge-data-frames-innen-außen-links-rechts. Kann wegen der Kopfgelder nicht schließen, aber das sollte definitiv sein. Beachten Sie auch, dass Sie, wenn Sie mehrere Y-Werte für Kombinationen von X1, X2, X3 und X4 haben, Y – Chris
@Chris nicht korrekt ziehen können, obwohl Sie es für den Moderator zum Schließen kennzeichnen können: http: //meta.stackexchange. com/questions/14591/how-can-we-close-questions-with-bounties – dww
Beantwortet der Typ Ihre Frage? Wenn es so ist, schließe ich das als Täter und erstatte das Kopfgeld zurück. –