übergeben wurde Ich möchte den Namen eines Datenrahmens, der durch die Pipe übergeben wurde, drucken können. Ist das möglich? Ich kann.Name des Datenrahmens, der durch die Pipe in R
printname <- function(df){
print(paste(substitute(df)))
}
printname(mtcars)
#[1] "mtcars"
Es gibt jedoch "." wenn diese Funktion über die Leitung magrittr
geleitet wird.
mtcars %>% printname
# [1] "."
Dies wäre hilfreich, wenn angemeldet Produktionsprozesse verwendeten benutzerdefinierte Fehlermeldungen von Funktionen zu schreiben - es ist schwer zu wissen, wo etwas, wenn das einzige, was im Protokoll ist fehlgeschlagen „“
Es würde wahrscheinlich reichen, den ursprünglichen Anruf zurückzugeben, der das mtcars %>%
Stück einschließen würde.
Wie starten Sie eine Pipeline, ohne den Namen des data.frame zu kennen? "bekommen"? Es gibt hier einen fehlenden Kontext. – alistaire
Sie kennen den Namen, wenn Sie den Code schreiben, aber die Funktionen, die Sie über die Pipe aufrufen, kennen den Namen nicht, so dass sie keine informativen Fehler auslösen können. Sie möchten, dass Runtime Assertions Fehler mit dem Namen des Datenrahmens auslösen, der den Fehler verursacht hat. –
Messe. Zeilennummern wären auch nett, jetzt wo ich darüber nachdenke. – alistaire