【发布时间】:2019-07-19 18:01:14
【问题描述】:
我想在变量前添加撇号 - sas 中的数字,以便 excel 中的输出显示为正确的数字而不是科学计数法
proc SQL; 创建表PERM.accounts为 选择不同的 input(LOAN_ACCOUNT_NO, $30.) as 'Account No'n 但这会在 excel 中产生类似这样的数字:1.23456E+12 - 但我需要输出如下所示:1234567891234 欺骗excel的方法是在数字前面加上一个撇号,例如:'1234567891234 如何在 proc sql 中编码?
,input(LOAN_ACCOUNT_NO, best32.) as 'Account No'n
,input(LOAN_ACCOUNT_NO, $30.) as 'Account No'n
如何在 proc sql 函数中使用 catx 语句附加 LOAN_ACCOUNT_NO?
更多代码(来自评论)
%SASSTARTUP;
%macro EXPORT_MAIL (
IN_DSNAME=PERM.FINAL_&END_CURR_MTH,
CSV_FNAME=DATA_&END_CURR_MTH
);
proc EXPORT
data=&IN_DSNAME
outfile="&OUTPUT_DATA_DIR.\&CSV_FNAME..csv"
dbms=CSV
replace label;
run;
filename myfile EMAIL
to=("&EMAIL_RECIP_1.")
from=(‘ @ ‘)
replyto=(‘ @ ‘)
subject=("Sample")
attach=(
"&OUTPUT_DATA_DIR.\&CSV_FNAME..csv"
content_type='application/excel'
)
;
data NULL;
file myfile;
put ' ';
put "The latest Sample is attached.";
put ' ';
run;
%mend EXPORT_MAIL;
【问题讨论】:
-
来源中贷款账号的数据类型是什么?
-
它是一个字符变量
-
我现在试过了: ,catx( "'" , LOAN_ACCOUNT_NO ) as 'Account No'n 这适用于 SAS 但 excel 将其恢复为科学记数法
-
你能说明你是如何将文件导出到 excel 中的吗?
-
%SASSTARTUP; %macro EXPORT_MAIL (IN_DSNAME=PERM.FINAL_&END_CURR_MTH, CSV_FNAME=DATA_&END_CURR_MTH); proc EXPORT data=&IN_DSNAME outfile="&OUTPUT_DATA_DIR.\&CSV_FNAME..csv" dbms=CSV 替换标签;跑;文件名 myfile EMAIL to=("&EMAIL_RECIP_1." ) from=('@') replyto=('@')) subject=("Sample") attach=("&OUTPUT_DATA_DIR.\&CSV_FNAME..csv" content_type='application/优秀'); ; ...
标签: sas