sas显示数据集与导入的行数差一半

我用数据导入DBF文件,显示成功建立数据集9列11334797行数据我(约11个G的数据);可在频数统计时只显示出一半的数据;请问是什么问题呢?

从您的描述,最可能的原因是:

  1. SAS在处理和显示超大数据集时,默认只加载和显示前50万行数据。这是为了限制SAS系统的内存占用和显示时间。
  2. 您可以通过以下方式显示完整数据集:
  • 在PROC SQL之前加上以下代码,设置OBS=选项以显示完整数据集:
    sas
    options obs=max;
  • 在PROC FREQ或其他PROC之前加上以下代码,设置FULLSTIMER选项以不限制显示时间:
    sas
    options fullstimer;
  • 或在代码开头加上以下选项组合:
    sas
    options obs=max fullstimer;
  • 另外,对超大数据集,推荐使用以下语句以提高SAS处理效率:
    sas
    proc sql noprint; /* 不显示中间结果 /
    select ... /
    SQL查询语句 */
    quit;
  • 在查询结束后再关闭OBS=MAX选项,以释放SAS占用的内存:
    sas
    options obs=;