SAS帮助:每隔一行读取缺少行的DAT文件

时间:2016-03-10 20:09:29

标签: import sas

我目前正在尝试从人口普查局网站导入数据,但似乎无效。

以下是我正在使用的特定文件的直接链接:https://www.census.gov/population/projections/data/state/st_yr11to15.html

数据存储在DAT文件中。当我在Notepad ++中打开数据时,我注意到每隔一行都有丢失的行。我使用此代码读取数据,但它不起作用:

filename rawdat" C:\ Data \ Users \ Dee \ Census \ Raw \ 2011 to 2015 \ AK1115.dat&#34 ;;

数据终止;      infile rawdat missover;      输入@ 1状态2。            @ 3 proj_series 1。; 运行;

我编写这个简短的代码只是为了确保我至少捕获状态FIP代码和预计的系列。我究竟做错了什么?还有另外一种解决这个问题的方法吗?

1 个答案:

答案 0 :(得分:0)

州和项目系列是字符,因此您需要$来阅读它们。

data test;
  infile "c:\temp\ak1115.dat";
  input 
    @1 state $2.
    @3 projcode $1.
  ;
run;

SAS有效地忽略了明显的额外行,因为他们只是0D0D0A。第一个0D(回车)导致记事本转到下一行,而第二个0D0A再次执行相同操作 - 但SAS 主要忽略第一个{{1 }}。它可能会在最后一个数据字段中显示为字符,因此请注意不要读取过去的位置137。