Ich bin neu in dplyr
und kann nicht herausfinden, wie man die Variablen steuert, um einen Verkettungsbefehl (%>%
) zu übergeben. Einfaches Beispiel: Die str_sub
Funktion benötigt drei Argumente - das erste wird über %>%
weitergegeben, aber wie kann ich die letzten beiden bekommen? :dplyr: benutze Verkettung um Variablen zu übergeben
library(stringr)
library(dplyr)
df <- data.frame(V1 = c("ABBEDHH", "DEFGH", "EFGF", "EEFD"),
V2=c(4, 2, 1, 1), V3=c(5, 2, 2, 1), stringsAsFactors=FALSE)
In Basis R konnte ich tun:
with(df, str_sub(V1, V2, V3))
und erhalten:
## [1] "ED" "E" "EF" "E"
Wie dies Kette? - Ich habe versucht:
df %>% str_sub(V1, V2, V3) # Here V3 is unused arg since V1 is treated as 2nd arg
df %>% select(V1) %>% str_sub(V2, V3) # Here V2 and V3 are not recognized
(+1) Nice one ... –
Perfekt! Für meinen Bedarf würde ich dann df%>% muate (neu = str_sub (V1, V2, V3))%>% select (new) – user3375672
@ user3375672 hinzufügen, ja, das kannst du tun, aber beachte, dass das wegen des Ergebnisses funktioniert ist immer noch ein data.frame (mit nur 1 Spalte), kein atomarer Vektor. –