Ich mag einen Datenrahmen innerhalb der Funktion erstellen, dieWie kann ich Spaltennamen in einer R-Funktion übergeben?
QPP<-function(dat,xvar,yvar){
varx <<- dat[,c(xvar)]
vary <<- dat[,c(yvar)]
a <- cbind(varx,vary)
a <- as.data.frame(a)
#Perform some operations
}
QPP(dat=d,xvar = area,yvar = f.ecdf)
Aber ich erhalte eine Fehlermeldung eine Auswahl der Spalten in dem Datenrahmen d:
Fehler bei eval (ausdr, envir, enclos): Argument fehlt, ohne Standard
- Wie kann ich dieses Problem beheben?
Kann ich alternativ die Spaltennamen in einem Schritt auswählen und dann auswählen und dann verbinden? Ich bin mir nicht sicher, wie ich die Spaltennamen weitergeben soll.
dput(droplevels(head(d,10))) structure(list(area = c(96.8656, 96.8656, 562.0274, 117.5855, 117.5855, 117.5855, 117.5855, 117.5855, 117.5855, 117.5855), tp = c(1.5, 1, 0.5, 4.5, 6, 8.25, 4.25, 5.75, 10.75, 20.25 ), f.ecdf = c(0.887918176006819, 0.812380140634988, 0.760387811634349, 0.0372895802258683, 0.00809716599190283, 0.0310036224163648, 0.300660558278287, 0.441721713189857, 0.152354570637119, 0.386852759428937)), .Names = c("area", "tp", "f.ecdf"), row.names = c(NA, -10L), class = c("data.table", "data.frame"))
Versuchen Sie mit 'QPP (dat = d, xvar =" Bereich ", yvar =" f.ecdf ")' – HubertL
Ich habe das versucht. Ich bekomme keinen Datenrahmen mit den Zahlen, sondern einen Datenrahmen mit dem Namensbereich und f.ecdf darin. Muss ich den Datensatz zuerst anhängen? – maximusdooku
Warum machst du nicht nur 'dat [, c (" area "," f.ecdf ")]'? Warum die Notwendigkeit für diese Funktion? – aichao