[英]Creating a function to iterate over tibble elements within a large list in R
我正在嘗試創建一個函數來自動化我在將多個數據集組合成一個 xts 之前需要做的一些基本格式。 我可以批量讀取文件並創建一個大列表。 但是我很難創建一個函數來迭代該列表。 當我將單個文件讀入 df 時,我一直在運行以下命令:
df<-df[!(duplicated(df$DateTime)),] dfx<-xts(df[,-1], order.by = as.POSIXct(df$DateTime, format="%d-%b-%y %H:%M:%S"))
然后我對所有 'dfx' 對象做了一個 merge.xts。 我對數據的一個問題是 DateTime 並不總是在文件之間匹配,並且上述方法給了我一個帶有 NA 的大 xts,這是我更喜歡另一種類型的合並/rbind。 我想創建一個函數來一遍又一遍地執行此操作,尤其是因為將每個文件讀入單獨的數據幀然后合並非常麻煩,因為我必須合並 10 個以上的文件。 我所有的嘗試都沒有成功,現在我只是被卡住了。 :/ 任何幫助,將不勝感激!
如果它是一個list
,我們可以使用lapply
循環遍歷list
並使用匿名函數調用來應用該函數。
lst2 <- lapply(lst1, function(df) {
df<-df[!(duplicated(df$DateTime)),]
xts(df[,-1], order.by = as.POSIXct(df$DateTime, format="%d-%b-%y %H:%M:%S"))
})
然后使用Reduce
進行merge
Reduce(merge, lst2)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.