Stworzyłem listę ramek danych o nazwie "lista" i chcę wybrać tylko niektóre kolumny każdego zestawu danych na liście.
library(dplyr)
new_list <- lapply(list, select(list, Date))
Zwraca błąd, ponieważ klasa (lista [1]) nie jestramkę danych, ale wciąż listę. class (list [[1]]) to ramka danych. Nie rozumiem tego, ponieważ elementy na mojej liście powinny być ramami danych, a także nie wiem, w jaki sposób mogę użyć "lapply".
Dzięki za pomoc!
Odpowiedzi:
3 dla odpowiedzi № 1Myślę, że twoja składnia jest trochę za mała. Zamiast tego spróbuj użyć anonimowej funkcji:
l <- list(mtcars,mtcars)
lapply(l,function(x) select(x,cyl,mpg))
1 dla odpowiedzi nr 2
Warto również pamiętać [
jest funkcją samą w sobie, więc:
new_list <- lapply(list, "[", c("list", "Date"))