R开发(part5)--导数计算
学习笔记,仅供参考,有错必纠
参考自:《R的极客理想》-- 张丹
文章目录
- R开发
- 导数计算
- 一阶导
- 二阶导
- 偏导数
R开发
导数计算
一阶导
通过R语言可以使用deriv函数直接进行导数的计算,比如要计算y=x3y=x^3y=x3的导数,根据导数计算公式,用于手动计算的变形结果为y′=3x2y'=3x^2y′=3x2,当x=1x=1x=1时,y′=3y'=3y′=3,当x=2x=2x=2时,y′=12y'=12y′=12。
R>dx <- deriv(y ~ myx^3, "myx")
R>dx
expression({.value <- myx^3.grad <- array(0, c(length(.value), 1L), list(NULL, c("myx"))).grad[, "myx"] <- 3 * myx^2attr(.value, "gradient") <- .grad.value
})
R>#查看dx的变量类型
R>mode(dx)
[1] "expression"
R>#给自变量myX赋值
R>myx <- 1:2
R>#原函数以及求导结果
R>eval(dx)
[1] 1 8
attr(,"gradient")myx
[1,] 3
[2,] 12
二阶导
#二阶导
dx <- deriv3(y ~ a*x^3 + b*x^2 + c, "x", func = function(x, a = 2, b = 1, c = 3) {})
#通过func参数,指定常数值dx(2)
#输出
[1] 23
attr(,"gradient")x
[1,] 28
attr(,"hessian")
, , xx
[1,] 26
偏导数
对f(x,y)=2x2+y+3xy2f(x, y) = 2x^2 + y + 3xy^2f(x,y)=2x2+y+3xy2中的x和y分别求偏导数:
R>fxy <- expression(2*x^2 + y + 3*x*y^2)
R>dxy <- deriv(fxy, c("x", "y"), func = TRUE)
R>dxy
function (x, y)
{.expr4 <- 3 * x.expr5 <- y^2.value <- 2 * x^2 + y + .expr4 * .expr5.grad <- array(0, c(length(.value), 2L), list(NULL, c("x", "y"))).grad[, "x"] <- 2 * (2 * x) + 3 * .expr5.grad[, "y"] <- 1 + .expr4 * (2 * y)attr(.value, "gradient") <- .grad.value
}
R>dxy(1, 1) #f(1,1)为6, x的偏导数为7, y的偏导数为7
[1] 6
attr(,"gradient")x y
[1,] 7 7
R开发(part5)--导数计算相关推荐
- R语言的导数计算(转)
转自:http://blog.fens.me/r-math-derivative/ 前言 高等数学是每个大学生都要学习的一门数学基础课,同时也可能是考完试后最容易忘记的一门知识. 我在学习高数的时候绞 ...
- R开发(part2)--R语言中的数学计算
学习笔记,仅供参考,有错必纠 参考自:<R的极客理想>-- 张丹 文章目录 R开发 R语言中的数学计算 对数 加权平均.连乘.差分.秩.任意数.全体数 阶乘.组合.排列 累加.累乘.最小累 ...
- R开发(part6)--pryr包
学习笔记,仅供参考,有错必纠 文章目录 R开发 pryr包 创建匿名函数f make_function 变量表达式替换 比较数据类型 查看对象是否被修改 快速创建list对象 查询环境变量 打印调用关 ...
- R开发(part3)--概率基础和R语言
学习笔记,仅供参考,有错必纠 参考自:<R的极客理想>-- 张丹 文章目录 R开发 概率基础和R语言 随机变量 大数定理 R开发 概率基础和R语言 随机变量 在样本空间(1,2,3,4,5 ...
- R开发(part1)--R语言知识体系结构
学习笔记,仅供参考,有错必纠 参考自:<R的极客理想>-- 张丹 R开发 R语言知识体系结构 R简介 R语言是一门统计语言,主要用于数学建模.统计计算.数据处理.可视化等几个方向,R语言天 ...
- R语言sd函数计算数值标准差实战(Standard Deviation)
R语言sd函数计算数值标准差实战(Standard Deviation) 目录 R语言sd函数计算数值标准差实战(Standard Deviation) #基本语法 #sd
- R语言自定义函数计算dataframe每列中的缺失值NA的个数、缺失值问题及其填充示例
R语言自定义函数计算dataframe每列中的缺失值NA的个数.缺失值问题及其填充示例 目录
- R语言Eta squared计算实战:Eta squared表示可以用模型中给定的变量解释的方差的比例、拟合方差分析模型(two-way ANOVA)、计算Eta Squared
R语言Eta squared计算实战:Eta squared表示可以用模型中给定的变量解释的方差的比例.拟合方差分析模型(two-way ANOVA).计算Eta Squared 目录
- R语言IQR函数计算四分位数范围IQR(Interquartile Range)实战
R语言IQR函数计算四分位数范围IQR(Interquartile Range)实战 目录 R语言IQR函数计算四分位数范围IQR(Interquartile Range)实战 #基本语法
最新文章
- springboot使用jdbc连接mysql数据库
- Dubbo-go 发布 1.5 版,朝云原生迈出关键一步
- springboot controller 分页查询_Spring Boot实战分页查询附近的人:Redis+GeoHash+Lua
- asp.net三层架构应用详解【收录】
- c语言作业模拟虚拟内存,如何用c语言实现虚拟内存
- input Type
- python setdefault函数_Python字典(Dictionary)setdefault()函数理解
- Linux虚拟机扩容
- 专题:固体力学中应力与应变分析详解(5.主方向与主应力)
- android 拍照添加背景颜色,怎么改变证件照的底色
- 计算机组成原理__第6章之硬盘存储器
- 计算机基础中图文混排的重要性,浅谈项目教学在技校计算机应用基础中的应用.doc...
- Synchronized和Reentrantlock的区别
- matlab应用最简差分格式,泊松方程有限差分格式的构造以及MATLAB实现.docx
- 逃离x86架构-----CPU体系结构CISC与RISC之争
- 数码相框_在LCD上显示英文字母、汉字的点阵显示(2)
- python网易云听歌时长_用Python爬取10w条网易云音乐热评并进行分析的方法总结
- address already in use :::8080,端口号已被占用
- 都市鸿蒙珠认主,都市之我能穿越洪荒
- I2C通讯 - 在一次通讯中(transaction) 多次start