Re: [R] KalmanSmooth problem

2004-07-07 Thread Uwe Ligges
Hazenberg21, Pieter wrote:
Hello,
In R I am trying to use Kalman filtering to find a solution for an hydrological problem. With Kalman Filtering I want to estimate the discharge comming from three storage bassins. I have programmed a function in R which can run KalmanSmooth. When I'm asking for the function and putting in values, R detects the following error: Error in as.vector(data) : Argument S1 is missing, with no default.
I have try to find a solution for this error in the R help file, and in different manuals, but I can't find it. Please help me find a solution.
Question: What does R mean with S1 and what am I doing wrong?
Here is the way I have programmed the hydrological problem in R. 
 

discharge=read.table(file=C:/Program Files/R/rw1090/discharge.txt,header=T)
deb=discharge[,1]
deb
  [1] 11.545313  8.045465  5.670868  4.044584  2.919311  2.306668  2.940956
  [8]  4.238159  5.017374  3.818236  2.928805  2.262183  1.757765  1.633945
 [15]  2.295130  3.454054  4.035224  3.193967  2.533181  2.012406  1.600836
 [22]  1.652155  2.428678  3.642827  4.019545  3.209473  2.563617  2.048347
 [29]  1.637041  1.828952  2.757842  4.050821  4.147013  3.316503  2.652490
 [36]  2.121535  1.696934  2.027763  3.107366  4.429670  4.160178  3.327950
 [43]  2.662237  2.129710  1.703717  2.158095  3.337039  4.582359  3.905901
 [50]  3.124690  2.499732  1.999772  1.599810  2.130893  3.302622  4.336081
 [57]  3.468857  2.775081  2.220062  1.776048  1.560859  2.169537  3.348081
 [64]  4.170552  3.336440  2.669151  2.135320  1.708256  1.648859  2.374217
 [71]  3.624091  4.248563  3.398850  2.719080  2.175264  1.740211  1.826122
 [78]  2.704749  4.056438  4.437309  3.549847  2.839878  2.271902  1.817522
 [85]  2.053994  3.107875  4.548436  4.600601  3.680481  2.944385  2.355508
 [92]  1.884406  2.273248  3.490148  4.949898  4.584409  3.667527  2.934022
 [99]  2.347217  1.84
Kalm = function(x,O1,O2,O3,T1,T2,T3,T4,T5,t,ga){
+ t=array(c(1+ga*O1+t/O1*(-(1/T2)-(1/T3)-(1/T1)),t/O1*(1/T2),t/O1*(1/T3),
+ t/O2*(1/T2),1+ga*O2+t/O2*(-(1/T2)-(1/T4)),t/O2*(1/T4),
+ t/O3*(1/T3),t/O3*(1/T4),1+ga*O3+t/O3*(-(1/T3)-(1/T4)-(1/T5))),dim=c(3,3));
+ h=0.5;
+ r=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
+ q=1;
+ v=r*q*t(r);
+ a=10.14286;
+ z=array(c((1/T1),0,0,0,0,0,0,0,(1/T5)), dim=c(3,3));
+ p=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
+ pn=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
+ kal=KalmanSmooth(x, list(T=t,Z=z,h=h,V=v,a=a,P=p,Pn=pn), nit=0)
+ kal}
 

Kalm(deb,4,.5,5,.7,.1,2,3,4,1,0.65)
Error in as.vector(data) : Argument S1 is missing, with no default
 
First I thought I had to make a timeserie of deb. But this doesn't change the problem.
Lot's of thanks trying to help me. 
a) Please tell us R Version and OS (OK, implicitly done that we are 
talking about R-1.9.0 on Windows).
b) Please tell us which packages you are using (I don't know 
KalmanSmooth(), for example).
c) Please try to specify reproducible examples.

Conclusion for a-c): Please read the posting-guide.
My hint is to try to debug yourself, at least *try*, starting eith 
calling traceback() right after the error appeared, in order to get a 
guess where the error really happens. Then look at the data that is 
passed to the function -  and I'm pretty sure you will get at least an 
idea what goes wrong.

Uwe Ligges


Best regards,
Pieter Hazenberg
Student Hydrology and Watermanagement
Wageningen University
The Netherlands
__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html


Re: [R] KalmanSmooth problem

2004-07-07 Thread Uwe Ligges
Spencer Graves wrote:
Hi, Uwe:  KalmanSmooth is in the stats package in R 1.9.1.  R is 
moving so fast that it is impossible to keep current with all parts of 
it.  Best Wishes, Spencer Graves
U  thanks, Spencer. My apologies to Pieter.
Indeed, looks like I forgot to upgrade my R version on the machine at 
home. I only did so in my office and on my laptop.

Uwe

Uwe Ligges wrote:
Hazenberg21, Pieter wrote:
Hello,
In R I am trying to use Kalman filtering to find a solution for an 
hydrological problem. With Kalman Filtering I want to estimate the 
discharge comming from three storage bassins. I have programmed a 
function in R which can run KalmanSmooth. When I'm asking for the 
function and putting in values, R detects the following error: Error 
in as.vector(data) : Argument S1 is missing, with no default.
I have try to find a solution for this error in the R help file, and 
in different manuals, but I can't find it. Please help me find a 
solution.
Question: What does R mean with S1 and what am I doing wrong?
Here is the way I have programmed the hydrological problem in R. 

discharge=read.table(file=C:/Program 
Files/R/rw1090/discharge.txt,header=T)
deb=discharge[,1]
deb

  [1] 11.545313  8.045465  5.670868  4.044584  2.919311  2.306668  
2.940956
  [8]  4.238159  5.017374  3.818236  2.928805  2.262183  1.757765  
1.633945
 [15]  2.295130  3.454054  4.035224  3.193967  2.533181  2.012406  
1.600836
 [22]  1.652155  2.428678  3.642827  4.019545  3.209473  2.563617  
2.048347
 [29]  1.637041  1.828952  2.757842  4.050821  4.147013  3.316503  
2.652490
 [36]  2.121535  1.696934  2.027763  3.107366  4.429670  4.160178  
3.327950
 [43]  2.662237  2.129710  1.703717  2.158095  3.337039  4.582359  
3.905901
 [50]  3.124690  2.499732  1.999772  1.599810  2.130893  3.302622  
4.336081
 [57]  3.468857  2.775081  2.220062  1.776048  1.560859  2.169537  
3.348081
 [64]  4.170552  3.336440  2.669151  2.135320  1.708256  1.648859  
2.374217
 [71]  3.624091  4.248563  3.398850  2.719080  2.175264  1.740211  
1.826122
 [78]  2.704749  4.056438  4.437309  3.549847  2.839878  2.271902  
1.817522
 [85]  2.053994  3.107875  4.548436  4.600601  3.680481  2.944385  
2.355508
 [92]  1.884406  2.273248  3.490148  4.949898  4.584409  3.667527  
2.934022
 [99]  2.347217  1.84

Kalm = function(x,O1,O2,O3,T1,T2,T3,T4,T5,t,ga){

+ 
t=array(c(1+ga*O1+t/O1*(-(1/T2)-(1/T3)-(1/T1)),t/O1*(1/T2),t/O1*(1/T3),
+ t/O2*(1/T2),1+ga*O2+t/O2*(-(1/T2)-(1/T4)),t/O2*(1/T4),
+ 
t/O3*(1/T3),t/O3*(1/T4),1+ga*O3+t/O3*(-(1/T3)-(1/T4)-(1/T5))),dim=c(3,3)); 

+ h=0.5;
+ r=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
+ q=1;
+ v=r*q*t(r);
+ a=10.14286;
+ z=array(c((1/T1),0,0,0,0,0,0,0,(1/T5)), dim=c(3,3));
+ p=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
+ pn=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
+ kal=KalmanSmooth(x, list(T=t,Z=z,h=h,V=v,a=a,P=p,Pn=pn), nit=0)
+ kal}
 

Kalm(deb,4,.5,5,.7,.1,2,3,4,1,0.65)

Error in as.vector(data) : Argument S1 is missing, with no default
 
First I thought I had to make a timeserie of deb. But this doesn't 
change the problem.
Lot's of thanks trying to help me. 

a) Please tell us R Version and OS (OK, implicitly done that we are 
talking about R-1.9.0 on Windows).
b) Please tell us which packages you are using (I don't know 
KalmanSmooth(), for example).
c) Please try to specify reproducible examples.

Conclusion for a-c): Please read the posting-guide.
My hint is to try to debug yourself, at least *try*, starting eith 
calling traceback() right after the error appeared, in order to get a 
guess where the error really happens. Then look at the data that is 
passed to the function -  and I'm pretty sure you will get at least an 
idea what goes wrong.

Uwe Ligges


Best regards,
Pieter Hazenberg
Student Hydrology and Watermanagement
Wageningen University
The Netherlands
__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! 
http://www.R-project.org/posting-guide.html

__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! 
http://www.R-project.org/posting-guide.html


__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html


RE: [R] KalmanSmooth problem

2004-07-07 Thread Hazenberg21, Pieter
Dear Uwe and Spencer,
Thanks for replying so soon. The R version I wrote is indeed R 1.9.1, and the package 
is stats. Sorry I didn't wrote it in my first email. I've have tried to use the 
comments you gave, and simplified my function. 
It is changed to:
 
 Kalm = function(x){
+ t=array(c(-1.4248, 2.5, .1250, 20, -19.3183, .6667, .1, .0667, 1.7945), dim=c(3,3))
+ h=0.5;
+ r=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
+ q=1;
+ v=r*q*t(r);
+ a=10.14286;
+ z=array(c(.3574, 0, 0, 0, 0, 0, 0, 0, .2), dim=c(3,3))
+ p=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
+ pn=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
+ kal=KalmanSmooth(x,list(T=t,Z=z,h=h,V=v,a=a,P=p,Pn=pn),nit=0)
+ kal}
Kalm(deb)
 
Wonderfully it is running quite well now. Thank you for your spare time.
Best regards,
Pieter Hazenberg

-Oorspronkelijk bericht- 
Van: Uwe Ligges [mailto:[EMAIL PROTECTED] 
Verzonden: wo 7-7-2004 22:09 
Aan: Spencer Graves; Hazenberg21, Pieter 
CC: R Help Mailing List 
Onderwerp: Re: [R] KalmanSmooth problem



Spencer Graves wrote:

 Hi, Uwe:  KalmanSmooth is in the stats package in R 1.9.1.  R is
 moving so fast that it is impossible to keep current with all parts of
 it.  Best Wishes, Spencer Graves

U  thanks, Spencer. My apologies to Pieter.

Indeed, looks like I forgot to upgrade my R version on the machine at
home. I only did so in my office and on my laptop.

Uwe


 Uwe Ligges wrote:

 Hazenberg21, Pieter wrote:

 Hello,
 In R I am trying to use Kalman filtering to find a solution for an
 hydrological problem. With Kalman Filtering I want to estimate the
 discharge comming from three storage bassins. I have programmed a
 function in R which can run KalmanSmooth. When I'm asking for the
 function and putting in values, R detects the following error: Error
 in as.vector(data) : Argument S1 is missing, with no default.
 I have try to find a solution for this error in the R help file, and
 in different manuals, but I can't find it. Please help me find a
 solution.
 Question: What does R mean with S1 and what am I doing wrong?
 Here is the way I have programmed the hydrological problem in R.

 discharge=read.table(file=C:/Program
 Files/R/rw1090/discharge.txt,header=T)
 deb=discharge[,1]
 deb



   [1] 11.545313  8.045465  5.670868  4.044584  2.919311  2.306668 
 2.940956
   [8]  4.238159  5.017374  3.818236  2.928805  2.262183  1.757765 
 1.633945
  [15]  2.295130  3.454054  4.035224  3.193967  2.533181  2.012406 
 1.600836
  [22]  1.652155  2.428678  3.642827  4.019545  3.209473  2.563617 
 2.048347
  [29]  1.637041  1.828952  2.757842  4.050821  4.147013  3.316503 
 2.652490
  [36]  2.121535  1.696934  2.027763  3.107366  4.429670  4.160178 
 3.327950
  [43]  2.662237  2.129710  1.703717  2.158095  3.337039  4.582359 
 3.905901
  [50]  3.124690  2.499732  1.999772  1.599810  2.130893  3.302622 
 4.336081
  [57]  3.468857  2.775081  2.220062  1.776048  1.560859  2.169537 
 3.348081
  [64]  4.170552  3.336440  2.669151  2.135320  1.708256  1.648859 
 2.374217
  [71]  3.624091  4.248563  3.398850  2.719080  2.175264  1.740211 
 1.826122
  [78]  2.704749  4.056438  4.437309  3.549847  2.839878  2.271902 
 1.817522
  [85]  2.053994  3.107875  4.548436  4.600601  3.680481  2.944385 
 2.355508
  [92]  1.884406  2.273248  3.490148  4.949898  4.584409  3.667527 
 2.934022
  [99]  2.347217  1.84

 Kalm = function(x,O1,O2,O3,T1,T2,T3,T4,T5,t,ga){



 +
 t=array(c(1+ga*O1+t/O1*(-(1/T2)-(1/T3)-(1/T1)),t/O1*(1/T2),t/O1*(1/T3),
 + t/O2*(1/T2),1+ga*O2+t/O2*(-(1/T2)-(1/T4)),t/O2*(1/T4),
 +
 t/O3*(1/T3),t/O3*(1/T4),1+ga*O3+t/O3*(-(1/T3)-(1/T4)-(1/T5))),dim=c(3,3));

 + h=0.5;
 + r=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
 + q=1;
 + v=r*q*t(r);
 + a=10.14286;
 + z=array(c((1/T1),0,0,0,0,0,0,0,(1/T5)), dim=c(3,3));
 + p=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
 + pn=array(c(1,0,0,0,1,0,0,0,1),dim=c(3,3));
 + kal=KalmanSmooth(x, list(T=t,Z=z,h=h,V=v,a=a,P=p,Pn=pn), nit=0)
 + kal}
 

 Kalm(deb,4,.5,5,.7,.1,2,3,4,1,0.65)



 Error in as.vector(data) : Argument S1 is missing, with no default
 
 First I thought I had to make a timeserie of deb. But this doesn't
 change the problem.
 Lot's