簡體   English   中英

R Apply功能帶有2個數據框

[英]R apply function with 2 dataframe

我想使用rminer軟件包中的mmetric函數,我有兩個數據集(觀測和預測),並且想按列應用該函數,該怎么做?

預測:

     aa     oo    dcl     iy     sh
   2.255  0.648 -0.111  0.111 -0.049
   0.239  0.753 -0.972  1.907  0.000
   2.521  1.072 -0.107  0.100 -0.068
   0.415  1.072  0.735  0.789  0.885
   0.101  0.629  0.293  0.740  1.562
   0.496 -0.260 -0.133 -0.078  0.108

觀察:

    aa     oo    dcl     iy     sh
   2.255  0.648 -0.111  0.111 -0.049
   0.239  0.753 -0.972  1.907  0.000
   2.521  0.403 -0.107  0.100 -0.068
   0.415  2.713 -0.637  0.789  0.885
   0.101  0.629  0.293  0.740  1.562
   2.606 -0.260 -0.133 -0.078  0.108

對於我可以使用的單列

mmetric(obs[,1], pred[,1], mmetric = "MAE")

如何自動將其應用於整個數據集? 我嘗試使用“ apply”,並搜索了如何傳遞更多參數,或如何使用更多數據集/列表,但沒有找到任何解決方案!

謝謝!

我們可以使用Map在對應的列上應用函數mmetric

mapply(function(x,y) mmetric(x,y, metric='MAE'), obs, pred)
#     aa        oo       dcl        iy        sh 
#0.3516667 0.3850000 0.2286667 0.0000000 0.0000000 

或者我們不需要匿名功能

Map(mmetric, metric='MAE', obs, pred)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM