Date: Fri, 16 Jul 2004 17:30:22 -0400
Reply-To: Howard Schreier <Howard_Schreier@ITA.DOC.GOV>
Sender: "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From: Howard Schreier <Howard_Schreier@ITA.DOC.GOV>
Subject: Re: about dbms/copy and stat/transfer
I had more or less the same theory.
It may be that the variables need to be maintained as numerics. It is
possible with SAS to force as storage length of less than 8 bytes for
numeric variables, but it's tricky business.
Another strategy is to follow Chang's advice, then create a view to do the
expansion and conversion on the fly. Something like:
create view mylib.bloated as
select input(something,1.) as something,
[more of the same]
On Fri, 16 Jul 2004 15:14:51 -0400, Chang Y. Chung
>On Fri, 16 Jul 2004 11:24:02 -0700, william <smartie_zhuo@HOTMAIL.COM>
>>I have a STATA file ,its size is 9,336k,If I transfer it to SAS type
>>by stat/transfer,after transfer,its size is 24,481k,if i use
>>DBMS/COPY,then its size is 44,084,I try to understand why its has
>>different size by different software and why it has so huge difference
>>in its size.the last question,can i have any way to reduce the size by
>>DBMS/COPY,because i have no such huge hard disk.
>I suspect that stat/transfer may be translating stata's "float" type
>variables into sas's numeric variables of length 4, while DBMS/COPY does
>create sas's numeric variable of length 8.
>If your variables are numerical, but the (en)coded, categorical, type
>(e.g. 1 for "male" and 2 for "female"), then you can convert them to
>character variables before transfer and save some of the spaces.