dplyr
Filter funktioniert nicht, wenn ich eine Liste in der Check-Wert haben. Samething funktioniert, wenn ich zu Variable zuweisen. Siehe Code untenR dplyr Filter funktioniert nicht richtig mit mild komplexen Filter
df1<-data.frame(x=1:26, y=letters, stringsAsFactors = F)
templist<-list(alpha=df1)
res<-df1 %>% filter(y %in% templist$alpha$y)
nrow(res)
[1] 0
tempLetters <- templist$alpha$y
res<-df1 %>% filter(y %in% tempLetters)
nrow(res)
[1] 26
Ich dachte, dass dies früher funktioniert. Bitte helfen Sie. Beachten Sie, dass die Spaltennamen in beiden (y) gleich sind.
I dplyr
aktualisiert haben, tidyr
, pipeR
auf die neuesten Versionen auf Cran jetzt gerade (4. Januar 2017)
Ich denke, es kann ein Fehler oder der Name Konflikt sein, versuchen Sie mit 'Filter (df1, y% in% templist $ alpha [[2]])' oder sogar 'Filter (df1, y% in% templist $ alpha [["y"]]) ' – akrun
Sind Sie sicher, dass' filter() 'die gewünschte Funktion ist? 'Select()' kann nützlicher sein, zum Beispiel 'select (df1 $ alpha, y)' oder für die Liste 'select (templist $ alpha, y)' –
Andrew Ich habe nur ein einfaches Beispiel gegeben, um das Problem hervorzuheben. @akrun du bist richtig. Das Problem tritt bei Namenskonflikten auf! – guna