[R] using spec.pgram

Matthieu Stigler Matthieu.Stigler at gmail.com
Tue Jun 10 14:49:09 CEST 2008


Hello

I don't know exactly what you want to do but:

-why do you use in your example h$counts and not h? Furthermore helpl 
file says it should be a time series, why then rather not your time series?

-usually na.action will make the "default" action, which you can see by 
getOptions("na.action")

-here in this function it is provided in the function values na.action = 
na.fail so it will just remove the NA in the time series

-if you want to study a function, I advise you to copy it entirely, 
rename it and then just insert print(curiousobject...) in the function, 
this will allow you to let the function run and grasp the interessting 
objects, like:

study<-function (x, spans = NULL, kernel = NULL, taper = 0.1, pad = 0,   
fast = TRUE, demean = FALSE, detrend = TRUE, plot = TRUE,
    na.action = na.fail, ...)
{
    series <- deparse(substitute(x))
    x <- na.action(as.ts(x))
    print(x)
    xfreq <- frequency(x)
 ...}
study(sunspots)

-when you provide an example, instead of giving an external reference 
for the data, try to search a convenient internal data (accessed by 
data() ), so one will be able to reproduce your problems. Here you could 
use sunspots

-to obtain the commented code... I don't know it...

-good luck

Matthieu




> Hi everyone,
>
> first of all, I would like to say that I am a newbie in R, so I apologize in
> advance if my questions seem to be too easy for you.
>
> Well, I'm looking for periodicity in histograms. I have histograms of
> certain phenomenons and I'm asking whether a periodicity exists in these
> data. So, I make a periodogram with the function spec.pgram. For instance,
> if I have a histogram h, I call spec.pgram by spec.pgram (h, log="no",
> taper=0.5). So, I have some peaks that appear and I would like to interpret
> them but I do not know how they are computed and so what a peak with a value
> of 10000 represents in comparison with a peak of value 600 with another
> histogram.
> I looked at the source code of the function spec.pgram to better understand
> what is behind. But, when I apply the source code line by line, I've got a
> problem. For instance, I make:
>   
>> >data = scan ("file.txt")
>> >h = hist (data, breaks=max(data)/5000)
>>     
> #then I apply the first two lines of the spec.pgram function
>   
>> >series <- deparse(substitute(h$counts))
>> >x <- na.action(as.ts(h$counts))
>> >x
>>     
> NULL
> I do not understand why when I apply the first two lines of the function I
> have x which is equal to NULL (which make a mistake in the following lines
> of the code) but if I apply the function directly with h$counts it gives me
> a result.
> So, if someone can explain to me what is the problem and/or how spec.pgram
> exactly computes the periodogram and how to interpret it with my data, I
> would be so grateful.
> And subsidiary questions:
> - Is it possible to have the commented source code of the function?
> - I do not understand what is the function na.action in the second line of
> spec.pgram, so if you can explain it to me.
>
> Thanks in advance for your answers.
> Best regards,
>
> Anthony Mathelier
>
> 	[[alternative HTML version deleted]]



More information about the R-help mailing list