gpt4 book ai didi

format - SAS CSV 到字符前导零

转载 作者:行者123 更新时间:2023-12-04 02:53:28 25 4
gpt4 key购买 nike

在 SAS 9.3 中,我需要导入一个 CSV 文件,其中我的第一列有前导零。我已经重新研究过,只是不太清楚如何格式化声明。我已经完成并弄乱了它 - 我知道有一种 z 格式可能有效但不确定如何合并?

data pharmacy;
infile "\\path\June 2013\test.csv"
dsd missover
/*lrecl=512 pad*/
;
input
Field1 $ 1-10
/* Field2 $*/
;
RUN;

最佳答案

假设您的数据采用以下格式:

Field1, Field2
00001,1.2
00002,4.5
00010,189.2
00280546,0
0145605616,6

关于 Z. 格式,您是正确的。

如果您想将 Field1 保留为数字,则只需将其读取为数字 - SAS 将忽略前导零。但是你可以使用 z10。作为 Field1 的格式。因此,当创建数据集时 - 它将以前导零显示。或者,如果您想将 Field1 存储为字符变量,那也很容易 - 只需将 Field1 读取为数字并使用 put(Field1, z10.) 重新格式化。

DATA WORK.dummyImport;
INFILE '/<path>/dummyImport.csv' MISSOVER DSD FIRSTOBS=2 TERMSTR=CRLF; ;
INPUT
Field1
Field2 ;
FORMAT FIELD1 Z10.;
Field1_char=put(Field1, z10.);
RUN;

PROC PRINT DATA=WORK.DummyImport; RUN;

返回:

Field1  Field2  Field1_char 
0000000001 1.2 0000000001
0000000002 4.5 0000000002
0000000010 189.2 0000000010
0000280546 0 0000280546
0145605616 6 0145605616

关于format - SAS CSV 到字符前导零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17149144/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com