Why do you want to complicate your future work by hiding data (dates) in structure (column names), creating a dynamic data structure that forces you to write dynamic code unnecessarily, will create lots of unnecessarily wasted space because of missing values, and so on?
For reporting purposes, you can use the period dates as ACROSS variable in PROC REPORT:
data have;
input Date :monyy6. account_no $ DPD;
format date yymmd7.;
datalines;
Mar-18 101 64
Jun-18 101 79
Sep-18 101 61
Dec-18 101 76
Mar-19 101 33
Jun-19 101 42
;
proc report data=have;
column account_no dpd,date;
define account_no /group;
define date /across;
define dpd /analysis;
run;
... View more