1
我有一個data.frames的列表,我想有條件地重新分配data.frame中的值。如果我只是分配給一個data.frame我會說,像如何子集在數據列表中分配值
DF[DF==9] <- NA
設置在data.frame是9 NA所有條目。然而,當我嘗試使用lapply
做對列表中的每個data.frame相同的過程:
List_of_DFs <- list(DF1, DF2, DF3)
List_of_DFs <- lapply(List_of_DFs, function(x) x[x==9] <- NA)
而不是9每個值成爲NA,整個列表條目變成NA。所以在上面的情況下,List_of_DFs
變成NA,NA,NA
。
我知道我可以用for
循環和[[]]
子集操作符來做到這一點,但我認爲必須有更好的方法。
如果它很有趣或相關,這個問題背後的動機是data.frames列表來自XLConnect,隨後我將按行綁定data.frames,但我首先想要將某些字符值放在列中這應該是所有數字,所以我可以強制數字,然後按行綁定。