Ich sehe etwas unerwartetes Verhalten mit dplyr. Ich habe einen speziellen Anwendungsfall, aber ich werde ein Dummy-Problem aufstellen, um meinen Standpunkt zu verdeutlichen. Warum funktioniert das,Verwenden des Punktoperators in dplyr :: bind_cols
library(dplyr)
temp <- bind_cols(mtcars %>% select(-mpg), mtcars %>% select(mpg))
head(temp)
cyl disp hp drat wt qsec vs am gear carb mpg
6 160.0 110 3.90 2.620 16.46 0 1 4 4 21.0
6 160.0 110 3.90 2.875 17.02 0 1 4 4 21.0
Aber nicht dies,
library(dplyr)
temp <- mtcars %>% bind_cols(. %>% select(-mpg), . %>% select(mpg))
Error in cbind_all(x) : Argument 2 must be length 1, not 32
Danke für die Hilfe.
@markdly, wenn Sie Ihre Lösung untersuchen mit ' mtcars%>% bind_cols (wählen Sie (., -mpg), wählen Sie (., mpg)) 'das Ergebnis ist nicht korrekt. Es wendet einfach bind_cols auf 2 Kopien von mtcars an. die Auswahl wird ignoriert – Taran
oops! Ja, du hast recht – markdly