Hello,
My question is regarding this recent response from James Honaker to Glenys
Lafrance, pasted below. I'm using AmeliaView, and I received the same error
message for a small data set I'm using (N=126; and 23 variables--one is an
ID string). For some reason, Amelia returns that error when I try to set
one particular dummy variable as "ordinal" in the Step 2 "Variables"
options. All the other transformations I use under the Variables settings
work without error. In other words, if I don't transform the problematic
dummy variable but set all my other transformations, the program runs fine.
One final detail: the variable that is causing my error does not contain any
missing values. In fact, there are only 5 variables in the data set with
any missing values at all, and the degree of missingness is really minor.
So here's my followup question: When I run AmeliaView, should I still use a
transformation for variables even when they contain no missing values? In
reading the first two paragraphs of section 7.2 of the Amelia II manual, I
inferred that one should make these transformations for all variables (even
those with no missing values) because it would help the imputation procedure
to run. Am I reading that correctly?
Thanks,
Paul
Paul Manna
Assistant Professor
Department of Government
Thomas Jefferson Program in Public Policy
College of William and Mary
http://pmanna.people.wm.edu/
tel: 757-221-3024 / fax: 757-221-1868
On Thu, 30 Aug 2007, Glenys Lafrance wrote:
I am trying to set variable options for 41 variables. 25 are ordinal, the
remainder are ID variables. I'm getting the following message:
First off, you might not need to declare variables as ordinal. Generally you
only need to do this for variables that are going to be used in an analysis
model that requires ordinality (like a Logit, Poisson, Ordered Probit, and
the like), and even then, only for the Dependent variable. (Remember,
Nominal variables are another matter, and always need to be declared.) It
might seem unintuitive to allow imputations to have a space that is not the
same as the original data, but if you are rounding the imputations you are
losing information. An imputation of .51 on a dichotomous variable tells you
that in that imputed dataset, the imputation was nearly as likely to be a 1
as a 0. Very few models require right hand side variables to be ordinal,
although it may make graphs look more intuitive.
Anyway, not to deny your question, it seems like something might be wrong in
the way you are setting either the "ords" or "idvars" arguments. We have a
list of checks to try to catch common errors (and I make most of them
myself, commonly) but there are always interesting ways to define these
arguments in ways that are logically incompatible, that we've yet to think
of. Just check over them one more time. In the latest version of Amelia you
can set them either by using the a vector of the column number, or a vector
of variable names. The latter is less likely to trip you up. This is all
assuming you are using R code of your own, and not using the AmeliaView
interface, which ought not to allow you to do anything you can't do. Let me
know if you don't find your error, or are certain you've set things out
right. We try to write in useful error messages, but whatever event occured
did not trip one.
"error in unsubset(x.orig = prepped$trans.x, x.imp = ximp, blanks =
prepped$blanks, :
subscript out of bounds". Is there something I can do to
proceed.
Also, is there a way to round an imputed data point to the closest observed
value? Thanks in advance,
There is not something built in to do this, although declaring variables as
Ordinal will make certain that the imputations take integer values (if the
original data is integer). But it does not do this by rounding.
regards,
James Honaker
-
Amelia mailing list served by Harvard-MIT Data Center
[Un]Subscribe/View Archive: http://lists.gking.harvard.edu/?info=amelia
Hi Listers,
Hope rookie questions are welcome here, as I don't have a strong
quantitative background.
Can I impute missing data from a survey (with mainly dichotomous and ordinal
questions) and end up with 1 credible dataset with which to conduct the
analysis? I have been able to impute the m datasets using AMELIA, but I'd
like to combine them appropriately to use just 1 file with SPSS and AMOS
(SEM). If anyone can recommend a procedure I'd be super grateful.
If it is not something I can do competently, are there folks out there who
do fee-for-service consulting or analysis? If so, I'd like to hear from
you.pls respond off-list. I need to keep it very economical and expedient,
I'm fulltime, my research is not funded and I am very close to the deadline
for PhD completion. Thanks,
Glenys Lafrance
Ph.D candidate
University of Toronto
Ontario Institute for Studies in Education
Theory & Policy Studies, Higher Education
I am trying to set variable options for 41 variables. 25 are ordinal, the
remainder are ID variables. I'm getting the following message:
"error in unsubset(x.orig = prepped$trans.x, x.imp = ximp, blanks =
prepped$blanks, :
subscript out of bounds". Is there something I can do to
proceed.
Also, is there a way to round an imputed data point to the closest observed
value? Thanks in advance,
Glenys Lafrance
Dear List members,
When attempting to run Amelia on a .csv file I receive the following error:
There was an unexpected error in the execution of Amelia.
Double check all inputs for errors and take note of the error message:
Error in colSums(sapply(priors[, 1, drop = FALSE], ">", blanks)) :
'x' must be an array of at least two dimensions
I have no idea what this means and as an AMELIA novice I would appreciate
any help anyone can give!
Many thanks,
Ian
Ian Moran
Assistant Psychologist
Child and Adolescent Psychology
2nd Floor, 'A' Block
St Leonard's
Nuttall St
London
N1 5LZ
Direct: 020 7683 4311
Switch: 020 7683 4000
*********************************************************************
City and Hackney Teaching Primary Care Trust does not accept any responsibility for the content of this e-mail nor for any consequence of its use and storage.
This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they
are addressed. If you have received this email in error please notify
the system manager.
City and Hackney Teaching PCT has its own website at www.chpct.nhs.uk Our website contains information on our services, the organisation itself, some of our key documents and links to many other useful websites. If you would like to give us feedback on our site and how we can improve it, please use the online feedback form.
**********************************************************************
Hi all,
I've been trying to run Amelia on the RCE servers, using the
AmeliaView interface. I believe that I have updated to the 1.1.25
version, as i want to be able to take advantage of the recent
addition to take account of time-series cross-sectional analysis
issues. However, when I run the program, I get the following error
message:
Error in La.svdc(x, nu, nv) : error code 1 from Lapack routine 'dgesdd'
I had been able to get the program to run before the upgrade with
the same (and a very similar) dataset, so I'm wondering if there's
something that I'm doing or something that needs to be fixed?
Thanks for any help you can give.
Best,
-Nathan
----------
Nathan A. Paxton
Ph.D. Candidate
Dept. of Government, Harvard University
Resident Tutor
John Winthrop House, Harvard University
napaxton AT fas DOT harvard DOT edu
http://www.fas.harvard.edu/~napaxton
========================================================================
===============================
When you have to stay eight years away from California, you live in a
perpetual state of homesickness.
- Ronald Reagan
The most courageous act is still to think for yourself. Aloud.
-Coco Chanel
========================================================================
===============================
Hi -
I ran across this problem when helping someone attempting to do imputation
on a large dataset. To conserve memory, she would like to write each
imputed dataset to a file and then discard it before moving on to the next
imputation. I think that should be possible using the keep.data=F and
write.out = T arguments. Setting these options appears to erase the
imputed datasets before they are sent to a file, and return NAs instead:
if (keep.data) {
impdata[[i]] <- impfill(x.orig = data, x.imp = ximp,
noms = prepped$noms, ords = prepped$ords)
names(impdata)[i] <- paste("m", i, sep = "")
}
else {
impdata[[i]] <- NA
}
if (write.out) {
write.csv(impdata[[i]], file = paste(prepped$outname,
i, ".csv", sep = ""))
}
Cheers,
Mike
---
Michael Kellermann
Ph.D Candidate, Department of Government
Harvard University
kellerm(a)fas.harvard.edu
http://people.fas.harvard.edu/~kellerm/
-
Amelia mailing list served by Harvard-MIT Data Center
[Un]Subscribe/View Archive: http://lists.gking.harvard.edu/?info=amelia
Dear list members,
I am a complete novice with Amelia. I can't find what the missing data
value should be when I look in the input dataset section of the
documentation and there doesn't seem to be anywhere in the program to
specify what value the missing values take. For example, should the
observations given a n/a, . or -999 value?
Thanks for your time,
Jamie
-
Amelia mailing list served by Harvard-MIT Data Center
[Un]Subscribe/View Archive: http://lists.gking.harvard.edu/?info=amelia