A possible way is to convert this last day of the week to a datetime, and then access the month of that:
df['LastDayWeek'] = pd.to_datetime((df['Week']-1).astype(str) + "6", format="%Y%U%w")
The minus one because python starts counting at zero (http://docs.python.org/2/library/datetime.html#strftime-and-strptime-behavior), the + "6"
is to have the last day of each week.
Then you get the month of these days with:
df['MonthMax'] = pd.DatetimeIndex(df['LastDayWeek']).month
gives:
In [6]: df
Out[6]:
Week product quantity LastDayWeek MonthMax
0 201301 coke 1.5 2013-01-05 00:00:00 1
1 201302 fanta 1.7 2013-01-12 00:00:00 1
2 201304 coke 3.6 2013-01-26 00:00:00 1
3 201306 sprite 2.4 2013-02-09 00:00:00 2
4 201308 pepsi 2.9 2013-02-23 00:00:00 2