<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Cannot Trouble Shoot Error - &amp;quot;permanent copy deleted&amp;quot; in SAS/IML Software and Matrix Computations</title>
    <link>https://communities.sas.com/t5/SAS-IML-Software-and-Matrix/Cannot-Trouble-Shoot-Error-quot-permanent-copy-deleted-quot/m-p/139965#M1145</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt;So I wrote a&amp;nbsp; simulation program in proc IML.&amp;nbsp; It works fine when the number of reps are low. However, when I run the full program, it crashes on me and I get this error message eventually:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ERROR: Permanent copy of file WORK.DAT.DATA was deleted.&lt;/P&gt;&lt;P&gt;ERROR: Cannot create data set WORK.DAT. [Permanent copy of file WORK.DAT.DATA was deleted.]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am guessing I am reading and writing the work.dat file too many times?&amp;nbsp; Any help would be appreciated. I pasted the program below (sorry a lot of the beginning is a really makeshift way of changing the seed for each condition - if anyone knows a more elegant way to change the seed for each condition and have it be a known value - I would appreciate info on that too! ). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROC IML;&lt;/P&gt;&lt;P&gt;path = 'C:\';&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Specify the number of observations and simulate the data; &lt;/P&gt;&lt;P&gt;probmiss = .2;&lt;/P&gt;&lt;P&gt;rando = 352930;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;nreps = 2000;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;do lpath = 1 to 3; &lt;/P&gt;&lt;P&gt;do apath = 1 to 4; &lt;/P&gt;&lt;P&gt;do bpath = 1 to 4; &lt;/P&gt;&lt;P&gt;do samp = 1 to 4;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if lpath = 1 then lambda = .4;&lt;/P&gt;&lt;P&gt;if lpath = 2 then lambda = .6;&lt;/P&gt;&lt;P&gt;if lpath = 3 then lambda = .8;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if apath = 1 then alpha = 0;&lt;/P&gt;&lt;P&gt;if apath = 2 then alpha = .1;&lt;/P&gt;&lt;P&gt;if apath = 3 then alpha = .3;&lt;/P&gt;&lt;P&gt;if apath = 4 then alpha = .5;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if bpath = 1 then beta = 0;&lt;/P&gt;&lt;P&gt;if bpath = 2 then beta = .1;&lt;/P&gt;&lt;P&gt;if bpath = 3 then beta = .3;&lt;/P&gt;&lt;P&gt;if bpath = 4 then beta = .5;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if samp = 1 then nobs = 100;&lt;/P&gt;&lt;P&gt;if samp = 2 then nobs = 200;&lt;/P&gt;&lt;P&gt;if samp = 3 then nobs = 500;&lt;/P&gt;&lt;P&gt;if samp = 4 then nobs = 1000;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if lpath = 1 &amp;amp; apath = 1 &amp;amp; bpath = 1 &amp;amp; samp = 1 then seedcalc = rando+510;&lt;/P&gt;&lt;P&gt;if lpath = 1 &amp;amp; apath = 1 &amp;amp; bpath = 2 &amp;amp; samp = 1 then seedcalc = rando+610;&lt;/P&gt;&lt;P&gt;if lpath = 1 &amp;amp; apath = 1 &amp;amp; bpath = 3 &amp;amp; samp = 1 then seedcalc = rando+701;&lt;/P&gt;&lt;P&gt;if lpath = 1 &amp;amp; apath = 1 &amp;amp; bpath = 4 &amp;amp; samp = 1 then seedcalc = rando+801;&lt;/P&gt;&lt;P&gt;if lpath = 1 &amp;amp; apath = 2 &amp;amp; bpath = 1 &amp;amp; samp = 1 then seedcalc = rando+901;&lt;/P&gt;&lt;P&gt;*** HERE I TRUNCATED ALL THE COMBOS FOR ILLUSTRATION PURPOSES - the actual program has every permutation written out ; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PSIM = 1 - (alpha*alpha);&lt;/P&gt;&lt;P&gt;PSIY = 1 - (beta*beta);&lt;/P&gt;&lt;P&gt;LambdaE = 1 - (lambda*lambda);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*LambdaX;&lt;/P&gt;&lt;P&gt;LX = {1.00};&lt;/P&gt;&lt;P&gt;*LambdaY Matrix;&lt;/P&gt;&lt;P&gt;LY = {1 0, 0 0, 0 0, 0 1.00};&lt;/P&gt;&lt;P&gt;LY[2,1] = lambda;&lt;/P&gt;&lt;P&gt;LY[3,1] = lambda;&lt;/P&gt;&lt;P&gt;*Gamma Matrix, First row is a path, Second row is c' path;&lt;/P&gt;&lt;P&gt;GA = {0, 0};&lt;/P&gt;&lt;P&gt;GA [1,1] = alpha; &lt;/P&gt;&lt;P&gt;*Phi Covariance Matrix;&lt;/P&gt;&lt;P&gt;PH = {1};&lt;/P&gt;&lt;P&gt;*Psi Covariance Matrix; &lt;/P&gt;&lt;P&gt;PS = {0 0.00, 0.00 0};&lt;/P&gt;&lt;P&gt;PS [1,1] = PSIM;&lt;/P&gt;&lt;P&gt;PS [2,2] = PSIY; &lt;/P&gt;&lt;P&gt;*Theta Delta Matrix;&lt;/P&gt;&lt;P&gt;TD = {0};&lt;/P&gt;&lt;P&gt;*Theta Epsilon Matrix; &lt;/P&gt;&lt;P&gt;TE = {0.00 0.00 0 0.00,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.00 0 0.00 0,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 0.00 0 0.00,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.00 0 0.00 0};&lt;/P&gt;&lt;P&gt;TE [2,2] = LambdaE;&lt;/P&gt;&lt;P&gt;TE [3,3] = LambdaE;&lt;/P&gt;&lt;P&gt;*Beta Matrix, Second Row First Column is b path;&lt;/P&gt;&lt;P&gt;B&amp;nbsp; = {0.00 0.00, 0 0.00};&lt;/P&gt;&lt;P&gt;B[2,1] = Beta; &lt;/P&gt;&lt;P&gt;*Identity Matrix; &lt;/P&gt;&lt;P&gt;I = {1 0, 0 1};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;COVY = LY*(INV(I-B))*(GA*PH*GA`+PS)*(INV(I-B`))*LY`+TE;&lt;/P&gt;&lt;P&gt;COVX = LX*PH*LX` + TD;&lt;/P&gt;&lt;P&gt;COVYX = LY*(INV(I-B))*GA*PH*LX`;&lt;/P&gt;&lt;P&gt;COVXY = LX*PH*GA`*(INV(I-B`))*LY`;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;UPPER = COVX || COVXY;&lt;/P&gt;&lt;P&gt;LOWER = COVYX || COVY;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cov = UPPER // LOWER;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *We set the mean vector to zero;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; means = j(5,1,0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; *Specify the random number seed;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; call randseed(seedcalc);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do iteration = 1 to nreps;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *Draw sample from multivariate normal distribution;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sampledata = randnormal(nobs,means,cov);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *Make some values missing;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; missingindicator = j(nobs,1,.);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call randgen(missingindicator,'Bernoulli',probmiss);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sampledata[loc(missingindicator = 1),2] = -999;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *Output data to SAS data set;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; create dat from sampledata[colname={X M1 M2 M3 Y}];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; append from sampledata;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; close dat;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *Create filename;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; file = path + "mplus_NOBS" + strip(char(nobs)) + "_MISS"&amp;nbsp; + strip(char(probmiss))+ "_alpha" + strip(char(alpha))+ "_beta" + &lt;/P&gt;&lt;P&gt;&amp;nbsp; strip(char(beta))+ "_lambda" + strip(char(lambda)) + "_iter" + strip(char(iteration)) + ".dat";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *Output SAS data set to .dat file;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; submit file;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data _null_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set dat;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; file "&amp;amp;file";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; put x m1 m2 m3 y;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; endsubmit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;end; end; end; end;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;quit; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 27 Jan 2015 16:00:18 GMT</pubDate>
    <dc:creator>pushpin2002</dc:creator>
    <dc:date>2015-01-27T16:00:18Z</dc:date>
    <item>
      <title>Cannot Trouble Shoot Error - "permanent copy deleted"</title>
      <link>https://communities.sas.com/t5/SAS-IML-Software-and-Matrix/Cannot-Trouble-Shoot-Error-quot-permanent-copy-deleted-quot/m-p/139965#M1145</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt;So I wrote a&amp;nbsp; simulation program in proc IML.&amp;nbsp; It works fine when the number of reps are low. However, when I run the full program, it crashes on me and I get this error message eventually:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ERROR: Permanent copy of file WORK.DAT.DATA was deleted.&lt;/P&gt;&lt;P&gt;ERROR: Cannot create data set WORK.DAT. [Permanent copy of file WORK.DAT.DATA was deleted.]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am guessing I am reading and writing the work.dat file too many times?&amp;nbsp; Any help would be appreciated. I pasted the program below (sorry a lot of the beginning is a really makeshift way of changing the seed for each condition - if anyone knows a more elegant way to change the seed for each condition and have it be a known value - I would appreciate info on that too! ). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROC IML;&lt;/P&gt;&lt;P&gt;path = 'C:\';&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Specify the number of observations and simulate the data; &lt;/P&gt;&lt;P&gt;probmiss = .2;&lt;/P&gt;&lt;P&gt;rando = 352930;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;nreps = 2000;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;do lpath = 1 to 3; &lt;/P&gt;&lt;P&gt;do apath = 1 to 4; &lt;/P&gt;&lt;P&gt;do bpath = 1 to 4; &lt;/P&gt;&lt;P&gt;do samp = 1 to 4;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if lpath = 1 then lambda = .4;&lt;/P&gt;&lt;P&gt;if lpath = 2 then lambda = .6;&lt;/P&gt;&lt;P&gt;if lpath = 3 then lambda = .8;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if apath = 1 then alpha = 0;&lt;/P&gt;&lt;P&gt;if apath = 2 then alpha = .1;&lt;/P&gt;&lt;P&gt;if apath = 3 then alpha = .3;&lt;/P&gt;&lt;P&gt;if apath = 4 then alpha = .5;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if bpath = 1 then beta = 0;&lt;/P&gt;&lt;P&gt;if bpath = 2 then beta = .1;&lt;/P&gt;&lt;P&gt;if bpath = 3 then beta = .3;&lt;/P&gt;&lt;P&gt;if bpath = 4 then beta = .5;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if samp = 1 then nobs = 100;&lt;/P&gt;&lt;P&gt;if samp = 2 then nobs = 200;&lt;/P&gt;&lt;P&gt;if samp = 3 then nobs = 500;&lt;/P&gt;&lt;P&gt;if samp = 4 then nobs = 1000;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if lpath = 1 &amp;amp; apath = 1 &amp;amp; bpath = 1 &amp;amp; samp = 1 then seedcalc = rando+510;&lt;/P&gt;&lt;P&gt;if lpath = 1 &amp;amp; apath = 1 &amp;amp; bpath = 2 &amp;amp; samp = 1 then seedcalc = rando+610;&lt;/P&gt;&lt;P&gt;if lpath = 1 &amp;amp; apath = 1 &amp;amp; bpath = 3 &amp;amp; samp = 1 then seedcalc = rando+701;&lt;/P&gt;&lt;P&gt;if lpath = 1 &amp;amp; apath = 1 &amp;amp; bpath = 4 &amp;amp; samp = 1 then seedcalc = rando+801;&lt;/P&gt;&lt;P&gt;if lpath = 1 &amp;amp; apath = 2 &amp;amp; bpath = 1 &amp;amp; samp = 1 then seedcalc = rando+901;&lt;/P&gt;&lt;P&gt;*** HERE I TRUNCATED ALL THE COMBOS FOR ILLUSTRATION PURPOSES - the actual program has every permutation written out ; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PSIM = 1 - (alpha*alpha);&lt;/P&gt;&lt;P&gt;PSIY = 1 - (beta*beta);&lt;/P&gt;&lt;P&gt;LambdaE = 1 - (lambda*lambda);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*LambdaX;&lt;/P&gt;&lt;P&gt;LX = {1.00};&lt;/P&gt;&lt;P&gt;*LambdaY Matrix;&lt;/P&gt;&lt;P&gt;LY = {1 0, 0 0, 0 0, 0 1.00};&lt;/P&gt;&lt;P&gt;LY[2,1] = lambda;&lt;/P&gt;&lt;P&gt;LY[3,1] = lambda;&lt;/P&gt;&lt;P&gt;*Gamma Matrix, First row is a path, Second row is c' path;&lt;/P&gt;&lt;P&gt;GA = {0, 0};&lt;/P&gt;&lt;P&gt;GA [1,1] = alpha; &lt;/P&gt;&lt;P&gt;*Phi Covariance Matrix;&lt;/P&gt;&lt;P&gt;PH = {1};&lt;/P&gt;&lt;P&gt;*Psi Covariance Matrix; &lt;/P&gt;&lt;P&gt;PS = {0 0.00, 0.00 0};&lt;/P&gt;&lt;P&gt;PS [1,1] = PSIM;&lt;/P&gt;&lt;P&gt;PS [2,2] = PSIY; &lt;/P&gt;&lt;P&gt;*Theta Delta Matrix;&lt;/P&gt;&lt;P&gt;TD = {0};&lt;/P&gt;&lt;P&gt;*Theta Epsilon Matrix; &lt;/P&gt;&lt;P&gt;TE = {0.00 0.00 0 0.00,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.00 0 0.00 0,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 0.00 0 0.00,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.00 0 0.00 0};&lt;/P&gt;&lt;P&gt;TE [2,2] = LambdaE;&lt;/P&gt;&lt;P&gt;TE [3,3] = LambdaE;&lt;/P&gt;&lt;P&gt;*Beta Matrix, Second Row First Column is b path;&lt;/P&gt;&lt;P&gt;B&amp;nbsp; = {0.00 0.00, 0 0.00};&lt;/P&gt;&lt;P&gt;B[2,1] = Beta; &lt;/P&gt;&lt;P&gt;*Identity Matrix; &lt;/P&gt;&lt;P&gt;I = {1 0, 0 1};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;COVY = LY*(INV(I-B))*(GA*PH*GA`+PS)*(INV(I-B`))*LY`+TE;&lt;/P&gt;&lt;P&gt;COVX = LX*PH*LX` + TD;&lt;/P&gt;&lt;P&gt;COVYX = LY*(INV(I-B))*GA*PH*LX`;&lt;/P&gt;&lt;P&gt;COVXY = LX*PH*GA`*(INV(I-B`))*LY`;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;UPPER = COVX || COVXY;&lt;/P&gt;&lt;P&gt;LOWER = COVYX || COVY;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cov = UPPER // LOWER;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *We set the mean vector to zero;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; means = j(5,1,0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; *Specify the random number seed;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; call randseed(seedcalc);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do iteration = 1 to nreps;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *Draw sample from multivariate normal distribution;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sampledata = randnormal(nobs,means,cov);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *Make some values missing;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; missingindicator = j(nobs,1,.);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call randgen(missingindicator,'Bernoulli',probmiss);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sampledata[loc(missingindicator = 1),2] = -999;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *Output data to SAS data set;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; create dat from sampledata[colname={X M1 M2 M3 Y}];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; append from sampledata;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; close dat;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *Create filename;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; file = path + "mplus_NOBS" + strip(char(nobs)) + "_MISS"&amp;nbsp; + strip(char(probmiss))+ "_alpha" + strip(char(alpha))+ "_beta" + &lt;/P&gt;&lt;P&gt;&amp;nbsp; strip(char(beta))+ "_lambda" + strip(char(lambda)) + "_iter" + strip(char(iteration)) + ".dat";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *Output SAS data set to .dat file;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; submit file;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data _null_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set dat;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; file "&amp;amp;file";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; put x m1 m2 m3 y;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; endsubmit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;end; end; end; end;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;quit; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Jan 2015 16:00:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-IML-Software-and-Matrix/Cannot-Trouble-Shoot-Error-quot-permanent-copy-deleted-quot/m-p/139965#M1145</guid>
      <dc:creator>pushpin2002</dc:creator>
      <dc:date>2015-01-27T16:00:18Z</dc:date>
    </item>
    <item>
      <title>Re: Cannot Trouble Shoot Error - "permanent copy deleted"</title>
      <link>https://communities.sas.com/t5/SAS-IML-Software-and-Matrix/Cannot-Trouble-Shoot-Error-quot-permanent-copy-deleted-quot/m-p/139966#M1146</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Well - I think I figured it out! It had nothing to do with my IML program - my computer's virus software was deleting the Work file.&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Jan 2015 16:54:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-IML-Software-and-Matrix/Cannot-Trouble-Shoot-Error-quot-permanent-copy-deleted-quot/m-p/139966#M1146</guid>
      <dc:creator>pushpin2002</dc:creator>
      <dc:date>2015-01-27T16:54:56Z</dc:date>
    </item>
  </channel>
</rss>

