1
我需要對通過ID
標識的車輛進行一些分析。此分析的結果將包括一些numeric
,factor
和logical
信息。在分析中使用的所有數據都在一個數據幀,這樣的功能是這樣的:使用功能增長數據幀的有效方法
Results <- by(Data, Data$ID, Function)
凡Function
的目的是讓輸出是這樣的:
Function <- function(DF) {
## Do stuff...
return(c(23.2, as.factor("SuperFast"), TRUE))
}
什麼是偉大這個方法到目前爲止,除了是相當快的(佔約1分鐘內,其中一個for
循環要花好幾個小時),可以很容易地放在data.frame
格式是:
as.data.frame(do.call("rbind", Results))
當然,c
在Function
和"rbind"
在do.call
脅迫一切到相同的對象類型。要解決這個問題,我已經作出Function
吐出一個特徵向量(如as.character(23.2, "SuperFast", TRUE)
,然後在結束手動更改對象類型。
有(1)返回的東西,可以在數據幀是row
方式?有不同的對象類型或(2)一個更好的方法比使用by
和c
(對於行)
只是踢,這裏的東西,可用於數據:
Data <- data.frame(ID=c(1,2,2,3))
謝謝 - 感覺很愚蠢,錯過了,但我很高興這很簡單。我認爲我之前試圖避免使用這種方法,因爲我用'colnames'命名了不同的東西,但是因爲這些都來自同一個函數,所以它應該完美地工作。 –