I solved it! Thanks! The code below is pretty inefficient. I think I may try to apply your blog post above about pre-defining matrices outside of loops.

Proc IML;
Reset Log Print;
Do i = 1 to 25;
If i < 10 then names1 = left(cat("x",putn(i, "BEST1.")));
else names1 = left(cat("x",putn(i, "BEST2.")));
Do t = 1 to 5;
If t < 10 then names2 = left(cat("y",putn(t, "BEST1.")));
else names2 = left(cat("y",putn(t, "BEST2.")));
varNames = varNames || cat(x,y);
End;
End;
Create Work.dataset from varNames[colname= varNames];
Append from varNames;
Quit;