使用PUT-in-SAS读取数据
我通常使用PROC EXPORT将数据从SAS读取到csv或.dat文件 我得到了一个使用PUT语句的读数,但我找不到一个如何使用这个语句的例子 我现在得到的是:使用PUT-in-SAS读取数据,sas,export-to-csv,Sas,Export To Csv,我通常使用PROC EXPORT将数据从SAS读取到csv或.dat文件 我得到了一个使用PUT语句的读数,但我找不到一个如何使用这个语句的例子 我现在得到的是: DATA TC_LEVEL_JUNE01; FILE "C:\Users\JUNE01.csv" LRECL = 7353; PUT @5 VAR1 $20. @25 VAR2 $20. @45 VAR3 2. ; RUN; 但这只是将数据更改为一行数据集 仅为了在操作系统中创建csv输出文件
DATA TC_LEVEL_JUNE01;
FILE "C:\Users\JUNE01.csv"
LRECL = 7353;
PUT
@5 VAR1 $20.
@25 VAR2 $20.
@45 VAR3 2.
;
RUN;
但这只是将数据更改为一行数据集 仅为了在操作系统中创建
csv
输出文件,请使用DATA\u NULL\u
。数据步骤没有SET
语句,因此没有要处理的数据行。因为您有数据TC\u LEVEL\u JUNE01
它将创建一个单行输出数据集和一个输出文件。不确定put语句将创建一个46个字符的行时,为什么LRECL=7353
这更接近于固定列输出所需的值(下游处理可能不需要逗号):
对于实PUT
filledcsv
也需要逗号分隔和双引号字符值
例如:
data _null_;
set sashelp.class;
file 'c:\temp\class.csv' dlmstr=',' dsd;
put name sex age ;
run;
从文件
帮助(粗体)
DSD(分隔符敏感数据)
指定包含嵌入分隔符的数据值,例如
制表符或逗号用引号括起来。DSD选项使您能够将包含嵌入式分隔符的数据值写入列表输出。对于其他类型的输出(例如,格式化、列和命名),此选项将被忽略。重复数据值中包含的任何双引号。当变量值包含分隔符且在FILE语句中使用DSD时,生成输出时,变量值用双引号括起
为了仅在操作系统中创建一个
csv
输出文件,请使用DATA\u NULL\u
。数据步骤没有SET
语句,因此没有要处理的数据行。因为您有数据TC\u LEVEL\u JUNE01
它将创建一个单行输出数据集和一个输出文件。不确定put语句将创建一个46个字符的行时,为什么LRECL=7353
这更接近于固定列输出所需的值(下游处理可能不需要逗号):
对于实PUT
filledcsv
也需要逗号分隔和双引号字符值
例如:
data _null_;
set sashelp.class;
file 'c:\temp\class.csv' dlmstr=',' dsd;
put name sex age ;
run;
从文件
帮助(粗体)
DSD(分隔符敏感数据)
指定包含嵌入分隔符的数据值,例如
制表符或逗号用引号括起来。DSD选项使您能够将包含嵌入式分隔符的数据值写入列表输出。对于其他类型的输出(例如,格式化、列和命名),此选项将被忽略。重复数据值中包含的任何双引号。当变量值包含分隔符且在FILE语句中使用DSD时,生成输出时,变量值用双引号括起
不确定“读取”是什么意思,但您的数据步骤没有读取任何数据,因此没有数据要写入。SAS附带有ds2csv()
宏。通常是从数据集创建CSV的最快/最简单的方法。只需在谷歌上搜索更多详细信息。不确定“读取”是什么意思,但您的数据步骤没有读取任何数据,因此没有数据可供写入。SAS附带的还有ds2csv()
宏。通常是从数据集创建CSV的最快/最简单的方法。只需谷歌搜索更多细节。