R应用具有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" 并搜索了如何传递更多参数,或者如何使用更多 datasets/lists,但我没有找到任何解决方案!
谢谢!
我们可以使用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)
我想使用 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" 并搜索了如何传递更多参数,或者如何使用更多 datasets/lists,但我没有找到任何解决方案!
谢谢!
我们可以使用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)