Adapted from the SAS code provided with this publication, you could start with:
Data have;
input year $ month $ count;
monthDate = input(cats("01", substr(month, 1, 3), year), date9.);
drop year month;
format monthDate yymmdd10.;
cards;
2017 Jan 0
2017 Feb 0
2017 Mar 2
2017 Apr 3
2017 May 1
2017 Jun 6
2017 Jul 12
2017 Aug 23
2017 Sept 25
2017 Oct 39
2017 Nov 40
2017 Dec 45
2018 Jan 44
2018 Feb 40
2018 Mar 38
2018 Apr 37
2018 May 35
2018 Jun 34
2018 Jul 24
2018 Aug 23
2018 Sept 25
2018 Oct 39
2018 Nov 40
2018 Dec 45
2019 Jan 0
2019 Feb 0
2019 Mar 2
2019 Apr 3
2019 May 1
2019 Jun 6
2019 Jul 12
2019 Aug 23
2019 Sept 25
2019 Oct 39
2019 Nov 40
2019 Dec 45
;
proc glimmix data=have;
effect splDate = spline(monthDate);
model count = splDate / dist=Poisson covb ddfm = residual;
random _residual_;
output out=glmixout pred(noblup ilink) = p
lcl(noblup ilink)= l
ucl(noblup ilink)= u;
run;
proc sgplot data=glmixout;
band x=monthDate lower=l upper=u;
scatter y=count x=monthDate;
series y=p x=monthDate;
xaxis type=time;
run;
(Not sure the confidence interval makes much sense at the beginning of the series... )
... View more