楼主: hopui2017
3953 6

[程序分享] R语言求偏导,R语言求导求助,R语言求导结果如何直接导出参与运算 [推广有奖]

  • 10关注
  • 3粉丝

硕士生

8%

还不是VIP/贵宾

-

威望
0
论坛币
2381 个
通用积分
11.9105
学术水平
2 点
热心指数
2 点
信用等级
2 点
经验
598 点
帖子
61
精华
0
在线时间
142 小时
注册时间
2017-10-19
最后登录
2024-3-2

10论坛币

大家好,请教一个问题,我想把求偏导算出来的结果4提出来怎么实现呢?谢谢
求偏导的结果怎么提出来有人能告诉我吗?假如公式中有两变量x和a1

> x<-2
> a1<-3
> a<-deriv(~a1*x^2,"a1") #对a1求偏导
> eval(a)#输出结果
[1] 12
attr(,"gradient")
     a1
[1,]  4


关键词:R语言 gradient Grad eval 输出结果
沙发
zhou1_20 发表于 2019-10-11 22:17:35 |只看作者 |坛友微信交流群
  1. fun = function(x,a1){
  2.   a = eval(deriv(~a1*x^2,'a1'))
  3.   re = data.frame(Deriv=a[1:length(a)],
  4.                   gradient=attr(a,'gradient')[1:length(a)])
  5.   return(re)
  6. }

  7. fun(2:3,3:4)
复制代码

使用道具

藤椅
zhou1_20 发表于 2019-10-12 13:39:41 |只看作者 |坛友微信交流群
  1. fun = function(x,a1){
  2.   a = eval(deriv(~a1*x^2,'a1'))
  3.   return(a[1:length(a)])
  4. }

  5. fun(2:3,3:4)
复制代码

使用道具

板凳
hopui2017 发表于 2019-10-12 14:32:07 |只看作者 |坛友微信交流群
zhou1_20 发表于 2019-10-12 13:39
您好,非常感谢您的答案,我想导出的是下面红色的部分内容怎么实现呢?再次感谢您。
> x<-2
> a1<-3
> a<-deriv(~a1*x^2,"a1") #对a1求偏导
> eval(a)#输出结果
[1] 12
attr(,"gradient")
     a1
[1,]  4

使用道具

报纸
hopui2017 发表于 2019-10-12 15:19:34 |只看作者 |坛友微信交流群
zhou1_20 发表于 2019-10-11 22:17
谢谢您的回复。使用很方便了,result<-fun(2,3)即可得出函数计算结果和偏导结果。谢谢。fun(2:3,3:4)是什么意思呢?
fun = function(x,a1){
  a = eval(deriv(~a1*x^2,'a1'))
  re = data.frame(Deriv=a[1:length(a)],
                  gradient=attr(a,'gradient')[1:length(a)])
  return(re)
}

fun(2:3,3:4)

使用道具

地板
zhou1_20 发表于 2019-10-12 15:30:13 |只看作者 |坛友微信交流群
hopui2017 发表于 2019-10-12 15:19
谢谢您的回复。使用很方便了,result
向量运算,同时算fun(2,3)和fun(3,4)两个值,也可以超过两个

使用道具

7
hopui2017 发表于 2019-10-12 15:40:34 |只看作者 |坛友微信交流群
zhou1_20 发表于 2019-10-12 15:30
向量运算,同时算fun(2,3)和fun(3,4)两个值,也可以超过两个
谢谢

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-24 07:28