我正在尝试使用以下代码将某些数据导入我的SAS数据集:
Data Names_And_More;
Infile 'C:\Users\Admin\Desktop\Torrent Downloads\SAS 9.1.3 Portable\Names_and_More.txt';
Input Name & $20.
Phone : $20.
Height & $10.
Mixed & $10.;
run;
文件中的数据如下:
Roger Cody (908)782-1234 5ft. 10in. 50 1/8
Thomas Jefferson (315)848-8484 6ft. 1in. 23 1/2
Marco Polo (800)123-4567 5Ft. 6in. 40
Brian Watson (518)355-1766 5ft. 10in 89 3/4
Michael DeMarco (445)232-2233 6ft. 76 1/3
我一直在努力学习SAS,在通过Ron Cody的书“学习SAS”的例子中,我发现导入上面的数据类型,我们可以使用“&符号(&)”信息修饰符。 &符号与冒号一样,表示要使用提供的信息,但分隔符现在是两个或更多空格而不是一个空格。 (罗恩的话,不是我的)。但是,在导入时,结果(数据集)如下:
Name Phone Height Mixed
Roger Cody (908)782- Thomas Jefferson Marco Polo
此外,有关详细信息,SAS日志如下:
419 Data Names_And_More; 420 Infile'C:\ Users \ Admin \ Desktop \ Torrent Downloads \ SAS 9.1.3 Portable \ Names_and_More.txt'; 421输入名称& $ 20 422电话:20美元。 423高度& $ 10 424混合& $ 10 425;跑;
注意:
infile'C:\ Users \ Admin \ Desktop \ Torrent Downloads \ SAS 9.1.3 Portable \ Names_and_More.txt'是: 文件名= C:\ Users \ Admin \ Desktop \ Torrent Downloads \ SAS 9.1.3 Portable \ Names_and_More.txt, RECFM = V,LRECL = 256
注意:
丢失卡片。 姓名= Brian Watson(518)35电话= Michael Height = DeMarco(4混合= ERROR = 1 N = 2 注意:从infile'C:\ Users \ Admin \ Desktop \ Torrent Downloads \ SAS 9.1.3中读取了5条记录 便携式\ Names_and_More.txt”。 最低记录长度为37。 最大记录长度为47。 注意:当INPUT语句超过行尾时,SAS转到新行。 注意:数据集WORK.NAMES_AND_MORE有1个观察值和4个变量。 注意:使用的DATA语句(总处理时间): 实时0.17秒 cpu时间0.14秒
我正在寻找这个帮助。如果有人能够解释究竟发生了什么,我做错了什么以及如何纠正这个错误,那就太好了。
由于
答案 0 :(得分:0)
答案在Ron Cody的书中的解释中。 &安培;意味着您需要两个空间来分隔变量;所以你需要在名字后面加第二个空格(和其他字段用&)。
错:
Roger Cody (908)782-1234 5ft. 10in. 50 1/8
右:
Roger Cody (908)782-1234 5ft. 10in. 50 1/8