我想在 a 中定义一个字符串PROC IML
,比如“aaaaa”(五个“a”)。在一个DATA
步骤中,我将使用该repeat()
函数创建一个重复子字符串的字符串,如文档中所述。
data _null_;
x=repeat('a',4); /* string with five 'a' */
put x;
run;
但是,在 SAS/IML 中,repeat()
功能不同:它创建一个矩阵重复另一个元素的矩阵(此处的文档)。所以如果我使用这个函数,我会得到一个包含五个“a”元素的向量。
proc iml;
x=repeat('a',5); /* 5 'a' strings */
print x;
quit;
在那个例子中,我显然不能打扰并直接使用:
x="aaaaa";
但是如果我需要一个更大的字符串(例如 100 个“a”)怎么办?我也可以在外部创建它PROC IML
并在之后导入它,但必须有更聪明的方法来解决这个问题,不是吗?