中易网

如何用R语言对一组样本数据进行拟合求出密度函数?

答案:2  悬赏:80  
解决时间 2021-02-03 15:26
找了很多网站 只听说用 fitdistrplus 包可以做 但是具体用法都不是很了解
最佳答案
曲线拟合:(线性回归方法:lm)
1、x排序
2、求线性回归方程并赋予一个新变量
z=lm(y~x+I(x^2)+...)
3、plot(x,y) #做y对x的散点图
4、lines(x,fitted(z)) #添加拟合值对x的散点图并连线


曲线拟合:(nls)
lm是将曲线直线化再做回归,nls是直接拟合曲线。
需要三个条件:曲线方程、数据位置、系数的估计值。
如果曲线方程比较复杂,可以先命名一个自定义函数。
例:
f=function(x1, x2, a, b) {a+x1+x2^b};
result=nls(x$y~f(x$x1, x$x2, a, b), data=x, start=list(a=1, b=2));
#x可以是数据框或列表,但不能是矩阵
#对系数的估计要尽量接近真实值,如果相差太远会报错:“奇异梯度”
summary(result); #结果包含对系数的估计和p值
根据估计的系数直接在散点图上...曲线方程,也可使用x, start=list(a=1、plot(x,但不能是矩阵
#对系数的估计要尽量接近真实值; #利用lowess做回归曲线
lines(x, span=0, x$x2..1).)
3。
例:(nls)
lm是将曲线直线化再做回归, y=NULL; lines(x, x2;span为窗宽参数
#degree默认为二次回归
#该方法计算1000个数据点约占10M内存
举例,越大计算越慢
loess(y~x;3,如果相差太远会报错, z$fit),y); y=sin(x)+rnorm(101) #x的值必须排序
plot(x, b)、求线性回归方程并赋予一个新变量
z=lm(y~x+I(x^2)+, data。

曲线拟合:(局部回归)
lowess(x、x排序
2,fitted(z)) #添加拟合值对x的散点图并连线

曲线拟合,predict(loess(y~x))):
f=function(x1、系数的估计值、y两个变量
#f为窗宽参数。
如果曲线方程比较复杂、数据位置, 10:
x=seq(0, iter = 3)
#可以只包含x:“奇异梯度”
summary(result)., f = 2/, b) {a+x1+x2^b}曲线拟合,y)), data=x, degree=2)
#data为包含x; #结果包含对系数的估计和p值
根据估计的系数直接在散点图上使用lines加曲线即可、lines(x, a.75。
需要三个条件; #做散点图
lines(lowess(x;
#x可以是数据框或列表,越大越平滑
#iter为迭代次数:(线性回归方法; #利用loess做回归曲线,可以先命名一个自定义函数:lm)
1,predict是取回归预测值
z=loess(y~x),nls是直接拟合曲线, 0、y的数据集, b=2)), a;
result=nls(x$y~f(x$x1,y) #做y对x的散点图
4
全部回答
曲线拟合:(线性回归方法:lm) 1、x排序 2、求线性回归方程并赋予一个新变量 z=lm(y~x+i(x^2)+...) 3、plot(x,y) #做y对x的散点图 4、lines(x,fitted(z)) #添加拟合值对x的散点图并连线 曲线拟合:(nls) lm是将曲线直线化再做回归,nls是直接拟合曲线。 需要三个条件:曲线方程、数据位置、系数的估计值。 如果曲线方程比较复杂,可以先命名一个自定义函数。 例: f=function(x1, x2, a, b) {a+x1+x2^b}; result=nls(x$y~f(x$x1, x$x2, a, b), data=x, start=list(a=1, b=2)); #x可以是数据框或列表,但不能是矩阵 #对系数的估计要尽量接近真实值,如果相差太远会报错:“奇异梯度” summary(result); #结果包含对系数的估计和p值 根据估计的系数直接在散点图上使用lines加曲线即可。 曲线拟合:(局部回归) lowess(x, y=null, f = 2/3, iter = 3) #可以只包含x,也可使用x、y两个变量 #f为窗宽参数,越大越平滑 #iter为迭代次数,越大计算越慢 loess(y~x, data, span=0.75, degree=2) #data为包含x、y的数据集;span为窗宽参数 #degree默认为二次回归 #该方法计算1000个数据点约占10m内存 举例: x=seq(0, 10, 0.1); y=sin(x)+rnorm(101) #x的值必须排序 plot(x,y); #做散点图 lines(lowess(x,y)); #利用lowess做回归曲线 lines(x,predict(loess(y~x))); #利用loess做回归曲线,predict是取回归预测值 z=loess(y~x); lines(x, z$fit); #利用loess做回归曲线的另一种做法
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
瑞福祥购物广场兰青店地址在什么地方,想过去
为什么那么多人说立白洗衣液好用
罗湖站K116次列车到九江的东莞东可以上车吗
滑县脱贫总结怎么写
三星9300韩版的,刷机后没有信号,打不了电话
69年9月1日出生现在实际年龄是多少岁
壹彩图文摩玛店怎么去啊,有知道地址的么
请问有没有兽医。我家狗狗,今天一直睡觉,无
手机后台自动下载东西怎么回事,连着下,一下
菏泽万邦物流地址在什么地方,想过去办事
仙人球招小人吗?
乡村四月这首诗表达了诗人怎样的思想感情
特步童装在什么地方啊,我要过去处理事情
要排出某班一天中语文、数学、政治、英语、体
夏天家里有小的硬壳虫怎么消灭
推荐资讯
我的神,求你改变我,使我更接近你.用英文怎么
手机QQ删掉了,下了新的手机QQ,但是里面的聊
昨天打开ku6网,点开其中的一个动漫视频后显示
有没有哪种啦啦啦啦啦的悲伤英文歌
小学生五年级英语第一单元spring歌曲
西安方太柏厨怎么样,比别的品牌好在哪里啊,
3d选号技巧
天龙八部什么发型最好看
清风欲叶是什么意思
宽带连接上了。一点网速没有。连网页也开不起
gal游戏汉化资源怎么用
java给数组从大到小排序输出问题
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?