我認爲用一個簡單的例子來解釋我的問題更容易。如何遞歸地使一個函數的輸出自動成爲R中相同函數的輸入?
Name <- c("A1", "A2")
A <- data.frame(Name)
Name <- c("A11", "A12")
A1 <- data.frame(Name)
Name <- c("A21", "A22")
A2 <- data.frame(Name)
crawl_F <- function(x) {
return(x[,1])
}
crawl_F(A)
在這個例子中,crawl_F(A)的結果在A1,A2。然而,我想通過一次crawl_F(A)調用找出crawl_F(A)產生A1,A2,A11,A12,A21,A22的方式。否則,我必須手動將該功能應用於A1和A2以獲得A11,A12,A21,A22。
在這種簡單的情況下,手動應用函數並不是什麼大問題,但如果A包含很多值,並且每個後續值都有很多值,那麼這種手動應用會花費大量時間和效率。
我曾考慮過使用遞歸函數,但還沒有想出如何爲此概率編寫遞歸。有沒有使用遞歸來解決這個問題的任何想法?
這可能會陷入無限循環。你的終止條件是什麼?我假設它不僅僅是這三個,而且你有更多的數據框,比如'A21','A22'等等。 – Aramis7d