[R] AIC in MuMIn
Gavin Simpson
gavin.simpson at ucl.ac.uk
Wed Aug 18 12:08:27 CEST 2010
On Wed, 2010-08-18 at 17:37 +0800, elaine kuo wrote:
<snip />
> => I posted it for help, after following the manual with the
> command dredge but receiving an error message two days ago.
>
> command target<-dredge(mig.stds, subset = temp_max)
> error in eval(expr, envir, enclos) : 'temp_max' not found
You really don't get it, do you? I can't see what the problem is with
your data + script, because I don't have your data! So I can't run your
script, reproduce your error and work round it, then send you the
solution. How many times do I have to ask for your data or, if not
possible, some dummy data that reproduces the same problem?
If your data weren't available to send, this is what I would have
expected, as requested by the posting guide:
## dummy data - this could be anything really
dat <- data.frame(FOO = rnorm(100), BAR = rnorm(100, mean = 10, sd = 4),
OTHER = seq(1, 100000, length = 100),
Y = runif(100))
## standardise data
dat.std <- data.frame(scale(dat, center = TRUE, scale = TRUE))
## load MuMIn
require(MuMIn)
## fit full model
mod <- lm(Y ~ FOO + BAR + OTHER, data = dat.std)
## data dredge
dredged.mod <- dredge(mod, subset = OTHER)
dredged.mod
The above works:
> ## dummy data
> dat <- data.frame(FOO = rnorm(100), BAR = rnorm(100, mean = 10, sd = 4),
+ OTHER = seq(1, 100000, length = 100),
+ Y = runif(100))
>
> ## standardise data
> dat.std <- data.frame(scale(dat, center = TRUE, scale = TRUE))
>
> ## load MuMIn
> require(MuMIn)
Loading required package: MuMIn
>
> ## fit full model
> mod <- lm(Y ~ FOO + BAR + OTHER, data = dat.std)
> mod
Call:
lm(formula = Y ~ FOO + BAR + OTHER, data = dat.std)
Coefficients:
(Intercept) FOO BAR OTHER
1.908e-16 -3.463e-02 1.635e-02 -1.299e-01
> summary(mod)
Call:
lm(formula = Y ~ FOO + BAR + OTHER, data = dat.std)
Residuals:
Min 1Q Median 3Q Max
-1.83375 -0.80706 0.01736 0.81847 1.72803
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.908e-16 1.006e-01 1.90e-15 1.000
FOO -3.463e-02 1.013e-01 -0.342 0.733
BAR 1.635e-02 1.011e-01 0.162 0.872
OTHER -1.299e-01 1.013e-01 -1.282 0.203
Residual standard error: 1.006 on 96 degrees of freedom
Multiple R-squared: 0.01901, Adjusted R-squared: -0.01165
F-statistic: 0.62 on 3 and 96 DF, p-value: 0.6037
> dredged.mod <- dredge(mod, subset = OTHER)
> dredged.mod
Global model: lm(formula = Y ~ FOO + BAR + OTHER, data = dat.std)
---
Model selection table
(Int) BAR FOO OTH k R.sq Adj.R.sq RSS AIC AICc
1 1.886e-16 -0.1324 3 0.01754 0.007514 97.26 287.0 287.3
3 1.886e-16 -0.03471 -0.1302 4 0.01874 -0.001493 97.14 288.9 289.3
2 1.908e-16 0.01652 -0.1322 4 0.01781 -0.002439 97.24 289.0 289.4
4 1.908e-16 0.01635 -0.03463 -0.1299 5 0.01901 -0.011650 97.12 290.9 291.5
delta weight
1 0.000 0.549
3 2.049 0.197
2 2.143 0.188
4 4.239 0.066
So is this due to the way your names are formed?
dat2 <- data.frame(dat, SOME_THING = rpois(100, 4))
dat2.std <- data.frame(scale(dat2, center = TRUE, scale = TRUE))
mod2 <- lm(Y ~ FOO + BAR + OTHER + SOME_THING, data = dat2.std)
## data dredge
dredged.mod2 <- dredge(mod2, subset = SOME_THING)
dredged.mod2
No!
So I can't reproduce your problem and until you send the *exact* code
you enter into R plus your data I can no longer help you. Apologies if I
am beginning to sound harsh, but you aren't doing what I have asked you
to do (repeatedly) and what the posting guide for this list asks you to.
If you want free help here, the least you can do is respect the rules.
Feel free to send the above data/code off list to me if you wish. But I
won't answer anything further on this thread until they are provided. I
am wasting my time in a futile attempt to help you with your problem
because you won't do what I ask.
G
> One possible cause could be data = datam.std.
> datam.std was produced as the code below, which seemed to make it
> hard to find explanatory variables.
> Please kindly share your experience in R, because I am unsure if my
> assumption is logical or not.
>
>
> Also, please kindly advise how to modify the command for dredging
> subset if possible.
> ( command target<-dredge(mig.stds, subset = temp_max))
> Thank you in advance.
>
>
> Elaine
>
>
> code
> library(MuMIn)
> datam <-read.csv("c:/migration/Mig_ratio_20100817.csv",header=T,
> row.names=1)
>
> # std regression model (16 indep. variables)
> datam.sd<-scale(datam)
> datam.std<-as.data.frame(datam.sd)
> summary (datam.std)
> mean(datam.std)
>
>
> # obtain standard deviation
> sd(datam.std)
>
>
> mig.stds <-lm(SummerM_ratio~temp_ran+temp_mean+temp_max+temp_min
> +evi_ran+evi_mean+evi_max+evi_min+prec_ran+prec_mean+prec_max+prec_min
> +topo_var+topo_mean+coast+Iso_index_0808,data=datam.std)
>
> summary(mig.stds)
>
>
>
>
--
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%
Dr. Gavin Simpson [t] +44 (0)20 7679 0522
ECRC, UCL Geography, [f] +44 (0)20 7679 0565
Pearson Building, [e] gavin.simpsonATNOSPAMucl.ac.uk
Gower Street, London [w] http://www.ucl.ac.uk/~ucfagls/
UK. WC1E 6BT. [w] http://www.freshwaters.org.uk
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%
More information about the R-help
mailing list