我想在具有例如nrow = 11451個元素的數據幀上使用rnorm函數。我不知道如何編寫代碼來爲每行導致使用nsim列和nrow行的sim-dataframe應用rnorm。使用rorm作爲數據幀
dfsim <- rnorm (n=nsim, mean=df[[?]], sd=df[[?]])
舉個例子:
> head(df)
An object of class "SpatialLinesDataFrame"
Slot "data":
LINEARID FULLNAME RTTYP MTFCC M01 SD01 Nsim
10969 1104486135650 US Hwy 90 Alt U S1200 0.0009886878 0.0001253361 10
10970 1104486135651 US Hwy 90 Alt U S1200 0.0009831224 0.0001442643 10
10416 1102965182224 Southwest Fwy E Acc M S1640 0.0010000000 0.0000000000 10
10494 1103342335512 Robin Hood Ct Pvt M S1780 0.0010000000 0.0000000000 10
10493 1103342334514 Little John Way Pvt M S1750 0.0010000000 0.0000000000 10
1847 1101842210421 Arrowood Cir N M S1400 0.0010000000 0.0000000000 10
我預期的結果是讓每一行包括模擬值十個多列。
我用下面的代碼,但得到了「無效參數錯誤」
> dfnorm <- apply([email protected], 1, function(x) rnorm(x["Nsim"], mean=x["M01"], sd=x["SD01"]))
Error in rnorm(x["Nsim"], mean = x["M01"], sd = x["SD01"]) :
invalid arguments
由於數據框太大,我用的子功能,只保留三排,並將其保存到.rdata文件。這裏是鏈接: df.rdata
其實每個行DF我有平均值和sd,我想在rnorm函數中調用它們。 – Mohammad
使用dput(head(df))而不是head(df),所以我們有一個可重複的數據集 – DataTx
我添加了一個指向.rdata文件的鏈接。謝謝。 – Mohammad