经管之家App
让优质教育人人可得
立即打开
全部版块
我的主页
›
论坛
›
数据科学与人工智能
›
数据分析与数据科学
›
R语言论坛
R中如何在一个函数中(需要用到外部函数)输入通用性的函数
楼主
peijianshi
2136
5
收藏
2017-03-14
我一直搞不懂R中,如果编写了一个函数,而这个函数可以适用于多种不同的模型,如何做的呢?
举个例子
x0 <- 1:10
myfun <- function(par, x){
y <- par[1] + par[2]*x
val <- 2 * y
return(val)
}
myfun(c(10, 2), x0)
上边的例子中,运行的结果对于一个线性模型,得到其结果的2倍,如果想直接在myfun()中输入任意一种形式的函数,如何做到的呢?
我只是举例2倍,实际的应用更为负责,要求可以将任何一种形式的函数直接编委myfun的一个录入变量,进而实现myfun的通用性,如何实现?
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
全部回复
沙发
bbslover
2017-3-14 21:17:50
最简单的办法就是在一个函数中写另外一个函数。
比如:
.dominateset <- function(xx,KK=20) {
###This function outputs the top KK neighbors.
zero <- function(x) {
s = sort(x, index.return=TRUE)
x[s$ix[1:(length(x)-KK)]] = 0
return(x)
}
normalize <- function(X) X / rowSums(X)
A = matrix(0,nrow(xx),ncol(xx));
for(i in 1:nrow(xx)){
A[i,] = zero(xx[i,]);
}
return(normalize(A))
}
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
藤椅
peijianshi
2017-3-16 10:56:47
bbslover 发表于 2017-3-14 21:17
最简单的办法就是在一个函数中写另外一个函数。
比如:
我现在需要进行模型比较,所以需要用到外部模型,然后外部模型不管其具体形式,可以放在模型比较的函数中。所以不便直接在模型比较函数内写具体需要对比的模型形式,因为希望模型比较函数具有一定的通用性。
Anyhow, thank you for your response.
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
板凳
qiu435
2017-3-16 16:21:45
你指的是泛型函数?
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
报纸
cheetahfly
2017-3-16 22:37:07
如果我没理解错,你想要了解的知识应该是涉及Functional programming,
具体请阅读《advanced R》的第10、11章内容。
就你目前想解决的问题,应该用modelr包中的add_prediction(), gather_prediction(), spread_preadiction()等就能解决。
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
地板
peijianshi
2017-3-31 23:50:01
已经解决,谢谢回复!
答案如下:
x0 <- 1:10
mymodel <- function(P, x){
P[1] + P[2] * x
}
myfun <- function(model, par, x){
y <- model(par, x)
val <- 2 * y
return(val)
}
myfun(mymodel, c(10, 2), x0)
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
相关推荐
On the Robustness of Unit Root Tests in the Presence of Double Unit Roots
论坛开张并诚招版主
庆祝论坛开张并诚招版主
有志于报考人大经济学院的同学朋友们看过来
庆祝论坛开张并诚招各分论坛版主
On the Robustness of Unit Root Tests in the Presence of Double Unit Roots
双单位根存在情况下单位根检验的稳健性研究
Local Power Functions of Tests for Double Unit Roots
周小川:调利率还需观察 息口盯住5%通胀率
栏目导航
R语言论坛
经管文库(原现金交易版)
爱问频道
休闲灌水
经管高考
学道会
热门文章
全国329个地级市地区北京大学数字普惠金融指 ...
Financial Mathematics, Derivatives And S ...
北美PHD,焦虑的一批~
《那年2003》第67章:预警信号频发?CDA老哥 ...
计算方法丛书006 无约束最优化计算方法 邓乃 ...
《信用价值论》社会再生产均衡方程式 在宏观 ...
新宏观丨豆包,货币经济下新古典范式的系统 ...
银行业与国民经济发展相关性研究报告1948-2 ...
计算方法丛书 样条函数方法 作者: 李岳生, ...
计算方法丛书 样条函数与计算几何 作者: 孙 ...
推荐文章
2026JG学术冬训营:从Stata初高到Python机器 ...
【必看】【本版版规,欢迎发悬赏贴求助】
【新课】26年3月|Gemini辅助论文写作与数据 ...
关于如何利用文献的若干建议
关于学术研究和论文发表的一些建议
关于科研中如何学习基础知识的一些建议 (一 ...
一个自编的经济学建模小案例 --写给授课本科 ...
AI智能体赋能教学改革: 全国AI教育教学应用 ...
2025中国AIoT产业全景图谱报告-406页
关于文献求助的一些建议
说点什么
分享
微信
QQ空间
QQ
微博
扫码加好友,拉您进群
各岗位、行业、专业交流群