楼主: xingzhaoh
4908 15

[问答] 小代码求教 [推广有奖]

副教授

20%

还不是VIP/贵宾

-

威望
0
论坛币
3407 个
通用积分
13.9638
学术水平
5 点
热心指数
6 点
信用等级
3 点
经验
583 点
帖子
421
精华
0
在线时间
703 小时
注册时间
2011-9-14
最后登录
2023-11-17

楼主
xingzhaoh 发表于 2012-11-20 14:15:29 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

最近仿照混合模型写了一段代码:

logistInit <- function(mCall, LHS, data) {

     xy <- sortedXyData(mCall[["x"]], LHS, data)

     if(nrow(xy) <3) {

         stop("Too few distinct input values to fit a logistic")

     }

     a <- max(abs(xy[,"y"]))

     if (a != max(xy[,"y"])) a <- -a  # negative asymptote

     b <- NLSstClosestX(xy, 0.5 * a)

value <- c(a, b)

     names(value) <- mCall[c("a", "b")]

     value

}

logist <- selfStart(logist, initial = logistInit)

class(logist)

#[1] "selfStart"

logist <- selfStart(~ a*dbh^b,

   initial = logistInit, parameters = c("a", "b"))

getInitial(total ~ logist(dbh,a, b), riben)

运行到此时出现:

错误于tapply(y, x, mean, na.rm = TRUE) : 参数的长度必需一样

不知哪位高手可以致电一下,不胜感激

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:logisti logist logis 混合模型 STI 模型

回帖推荐

epoh 发表于2楼  查看完整内容

data=read.csv("sysfit_11.csv") logistInit

沙发
epoh 发表于 2012-11-23 16:37:45
data=read.csv("sysfit_11.csv")

logistInit <- function(mCall, LHS, data) {
     xy <- sortedXyData(mCall[["x"]], LHS, data)
     if(nrow(xy) <3) {
         stop("Too few distinct input values to fit a logistic")
     }
     a <- max(abs(xy[,"y"]))
     if (a != max(xy[,"y"])) a <- -a  # negative asymptote
     b <- NLSstClosestX(xy, 0.5 * a)
     value <- c(a, b)
     names(value) <- mCall[c("a", "b")]
     value
}

logist <- selfStart(~ a*x^b,initial = logistInit, parameters = c("a", "b"))
getInitial(TOTAL ~ logist(DBH,a, b), data)

#        a         b
#833.11000  20.76035
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
kk22boy + 5 + 5 + 5 热心帮助其他会员

总评分: 学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

藤椅
xingzhaoh 发表于 2012-11-23 16:47:43
epoh 发表于 2012-11-23 16:37
data=read.csv("sysfit_11.csv")

logistInit
看懂了,谢谢,如何用R做贝叶斯先验估计的95%分位点值的帖子询问可以给指点一下吗?

板凳
xingzhaoh 发表于 2012-11-23 16:51:17
epoh 发表于 2012-11-23 16:37
data=read.csv("sysfit_11.csv")

logistInit
看懂了,谢谢

报纸
zhangtao 发表于 2012-11-23 23:04:42
epoh 发表于 2012-11-23 16:37
data=read.csv("sysfit_11.csv")

logistInit
epoh老师,您好!
   以上程序中LHS和DBH是什么意思?
数学好就是要天天学

地板
epoh 发表于 2012-11-24 08:35:44
zhangtao 发表于 2012-11-23 23:04
epoh老师,您好!
   以上程序中LHS和DBH是什么意思?
LHS : left-hand side
      simple formula log(y1) ~ x1 + x2 | I(x1^2)
      which has a single response log(y1) on the LHS
      and two parts on the RHS, separated by |.

变量DBH,TOTAL都是楼主的数据
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
zhangtao + 5 + 5 + 5 好的意见建议

总评分: 学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

7
zhangtao 发表于 2012-11-24 23:00:32
epoh 发表于 2012-11-24 08:35
LHS : left-hand side
      simple formula log(y1) ~ x1 + x2 | I(x1^2)
      which has a single  ...
epoh老师,您好!
    您看以下错误 是什么原因?如何解决?
非常感谢!

>> randn('state',0)                % Start from a known state.
x = randn(1000,1);              % 1000 Gaussian deviates ~ N(0,1).
y = filter(1,[1 -0.6 0.08],x);  % Create a stationary AR(2)
                                % process.
[PartialACF, Lags, Bounds] = parcorr(y , [] , 2); % Compute the
                                % partial ACF with 95 percent
                                % confidence.
[Lags, PartialACF]
Bounds
parcorr(y , [] , 2)            % Use the same example, but plot
                               % the partial ACF sequence with
                               % confidence bounds.
??? Error using ==> lagmatrix
lagmatrix: wrong # of input arguments

Error in ==> parcorr at 151
X          =  lagmatrix(Series , [1:nLags]);

>>
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
epoh + 3 + 3 + 3 补偿

总评分: 学术水平 + 3  热心指数 + 3  信用等级 + 3   查看全部评分

数学好就是要天天学

8
epoh 发表于 2012-11-25 09:18:09
zhangtao 发表于 2012-11-24 23:00
epoh老师,您好!
    您看以下错误 是什么原因?如何解决?
非常感谢!
lagmatrix.m 有兩個
一個在ucsd_garch toolbox
另一個在 James P. LeSage Econometrics Toolbox, 你要用這個
   http://www.spatial-econometrics.com/arfima/lagmatrix.m

%%%%%%%%%%%%%%%%%%%%
randn('state',0)                % Start from a known state.
x = randn(1000,1);              % 1000 Gaussian deviates ~ N(0,1).
y = filter(1,[1 -0.6 0.08],x);  % Create a stationary AR(2)                                
[PartialACF, Lags, Bounds] = parcorr(y , [] , 2)

PartialACF =

    1.0000
    0.5570
   -0.0931
    0.0249
   -0.0180
   -0.0099
    0.0483
    0.0058
    0.0354
    0.0623
    0.0052
   -0.0109
    0.0421
   -0.0086
   -0.0324
    0.0482
    0.0008
   -0.0192
    0.0348
   -0.0320
    0.0062


Lags =

     0
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20


Bounds =

    0.0633
   -0.0633
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
zhangtao + 5 + 5 + 5 好的意见建议

总评分: 学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

9
zhangtao 发表于 2012-12-7 10:45:27
epoh 发表于 2012-11-25 09:18
lagmatrix.m 有兩個
一個在ucsd_garch toolbox
另一個在 James P. LeSage Econometrics Toolbox, 你要 ...
http://www.spatial-econometrics.com/arfima/

epoh老师,您好!
为什么在http://www.spatial-econometrics.com的主页上看不到/arfima
这个子目录?
输入http://www.spatial-econometrics.com/arfima/这个可以看到?
怎么看到和了解http://www.spatial-econometrics.com/根目录下还有其他像arfima这样的目录呢?
数学好就是要天天学

10
zhangtao 发表于 2012-12-7 10:52:02
epoh老师,您好!
如何用附件 中的包用simulvar.m和calcvar.m
调用数据dati1.mat做VaR分析?
非常感谢!
数学好就是要天天学

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 07:14