我在将长字符串变量从SAS导出到SPSS时遇到问题。
DATA testString;
INPUT testString $ 300.;
testLength=LENGTH(testString);
DATALINES;
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
;
RUN;
PROC EXPORT
DATA=WORK.teststring
FILE="H:/TestSPSStrucation.sav"
DBMS=SAV
REPLACE;
当我打开导出的SPSS文件时,该字符串被截断为255个字符。我尝试过不同的方法,例如将dbms更改为SPSS或混合格式。没有多少结果。
生成的SPSS文件,testString变量是String类型,宽度为765.向变量添加字符以获得比255个字符更宽的字符串没有问题。
答案 0 :(得分:2)
从SAS 9.4开始,根据documentation,SAS在导出到SPSS时支持最多256个字节(字符)的字符变量。我的猜测是,当SAS开发SPSS导出引擎时,这是当前较旧的SPSS版本的限制。
SPSS能够直接从SAS数据集(.sas7bdat)导入,这可能是解决此问题的更好方法。
答案 1 :(得分:0)
我认为你可以通过扩展字符变量填充(CVP)引擎来解决这个问题。尝试使用您需要的选项CVPBYTES = #bytes的libname语句?
答案 2 :(得分:0)
SPSS已经支持长达32K的字符串变量了很长一段时间。您可以尝试使用SPSS过程来读取SAS文件目录。文件>打开或在语法中使用GET TRANSLATE。