BookmarkSubscribeRSS Feed
HeatherA
Calcite | Level 5

I am working on imputing data on body composition with proc mi and mianalyze. My analysis step is with proc glm to run a manova for a Hotelling's T2. I unfortunately have participants who were lost to follow up and I need to impute their data because of a small sample size. I have run the missing pattern and my imputation is for data MAR. I am imputing variables missing from the initial visit separate from the final visit.

 

I am running into an issue where the initial time I ran my coding the MI statement and the GLM statement ran, but I received warning statements for my ods output, and my MIANALYSE procedure did not run. In trying to research and remedy the issue the output has stopped running the GLM procedure.

 

My warnings are:

WARNING: Output 'invxpx' was not created.  Make sure that the output object name, label, or path is spelled correctly.  Also, verify that the appropriate procedure options are used to produce the requested output object.  For example, verify that the NOPRINT option is not used.

WARNING: Output 'ParameterEstimates' was not created.  Make sure that the output object name, label, or path is spelled correctly.  Also, verify that the appropriate procedure options are used to produce the requested output object.  For example, verify that the NOPRINT option is not used.

 

Thoughts on moving forward to get the output I need to run the MIANALYZE procedure?

 

Syntax run

data recov1;

input id rnd wkinit wkfin initcat1b fincat1b initwt initbmi initperbf initfmi initlmi initlpct inittpct inittlpctr initapct initgpct initagpctr finwt finbmi finperbf finfmi finlmi finlpct fintpct fintlpctr finapct fingpct finagpctr;

cards;

;

 

proc mi data=recov1 nimpute=0;

var rnd wkinit wkfin initcat1b fincat1b initwt initbmi initperbf initfmi initlmi initlpct inittpct inittlpctr initapct initgpct initagpctr finwt finbmi finperbf finfmi finlmi finlpct fintpct fintlpctr finapct fingpct finagpctr;

ods select misspattern;

run;

 

title "imputation phase initial body comp variables";

proc mi data=recov1 nimpute=25 out=mi_recov1 seed=4859;

class initcat1b rnd fincat1b;

fcs nbiter=10 reg(/details);

var rnd initcat1b fincat1b initwt initbmi initperbf initfmi initlmi initlpct inittpct inittlpctr initapct initgpct initagpctr;

run;

 

title "analysis phase from imputed initial body comp variables";

Proc glm data=mi_recov1 noprint;

class fincat1b;

Model initwt initbmi initperbf initfmi initlmi initlpct inittpct inittlpctr initapct initgpct initagpctr = fincat1b;

by _imputation_;

Manova h=fincat1b;

Means fincat1b / hovtest=bf;

ods output ParameterEstimates=recov1parms invxpx=recov1xpxi;

Run;

quit;

 

title "pooling phase for imputed initial body comp variables";

proc mianalyze parms=recov1parms xpxi=recov1xpxi;

class fincat1b;

var intercept initwt initbmi initperbf initfmi initlmi initlpct inittpct inittlpctr initapct initgpct initagpctr;

run;

stop;

1 REPLY 1
evardoodle
Fluorite | Level 6

You used the noprint option. It looks like the SAS log is tellingyou not to use the noprint option.

sas-innovate-2024.png

Don't miss out on SAS Innovate - Register now for the FREE Livestream!

Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.

 

Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 1 reply
  • 1637 views
  • 0 likes
  • 2 in conversation