SAS:生成抽象的长数据集和大数据集

SAS:生成抽象的长数据集和大数据集,sas,performance-testing,Sas,Performance Testing,试着做一些性能测试 我搞不懂宏 %generate(n_rows,n_cols); 这将生成一个包含n行和n列的表,其中填充了随机数/字符串 我尝试使用此链接: 但我很快就遇到了一个记忆问题 谢谢 试试这个。我添加了两个输入参数。现在你有了很多数字和字符。还可以定义输出数据集名称 %macro generate(n_rows,n_num_cols,n_char_cols,outdata=test,seed=0); data &outdata; array nums[&n_nu

试着做一些性能测试 我搞不懂宏

%generate(n_rows,n_cols);
这将生成一个包含n行和n列的表,其中填充了随机数/字符串 我尝试使用此链接:

但我很快就遇到了一个记忆问题


谢谢

试试这个。我添加了两个输入参数。现在你有了很多数字和字符。还可以定义输出数据集名称

%macro generate(n_rows,n_num_cols,n_char_cols,outdata=test,seed=0);
data &outdata;
array nums[&n_num_cols];
array chars[&n_char_cols] $;
temp = "abcdefghijklmnopqrstuvwxyz";
do i=1 to &n_rows;
    do j=1 to &n_num_cols;
        nums[j] = ranuni(&seed);
    end;
    do j=1 to &n_char_cols;
        chars[j] = substr(temp,ceil(ranuni(&seed)*18),8);
    end;
    output;
end;
drop i j temp;
run;

%mend;

%generate(10,10,10,outdata=test);

请提供迄今为止您拥有的代码。你想制作多大的桌子?您当前运行SAS的机器的硬件规格是什么?SAS配置使用了多少内存?它们需要多大的随机性?真正的随机值,或者只是你不在乎它们是什么,不希望它们都一样?都一样就可以了。你可以跳过一步,对字符执行
chars[j]=put(ranuni(0),最好)。
。谢谢!嘿,快问。如何防止Enterprise guide在“输出数据”窗口中加载结果,以使我的计算机在创建数据集后不会挂起?这是“结果”(生成时自动打开数据或结果)下的一个选项。您还可以将数据集的最大数量更改为零。我将添加一个种子(和一个种子参数),以便您可以重新创建相同的数据集-这取决于您在执行性能检查时所做的操作。使用相同的随机数据集可能会有所帮助。