Currently, I'm using the following for loop based on an if condition for each month to assign months to their numeric equivalents. It seems to be quite efficient in terms of runtime, but is too manual and ugly for my preferences.

How could this be better executed? I imagine it's possible to improve on it by simplifying/condensing the multiple if conditions somehow, as well as by using some sort of translator that is made for date conversions? Each of which would be preferable?

```
#make numeric month

combined = combined.sort_values('month')
combined.index = range(len(combined))
combined['month_numeric'] = None

for i in combined['month'].unique():
    first = combined['month'].searchsorted(i, side='left')
    last = combined['month'].searchsorted(i, side='right')
    first_num = list(first)[0] #gives first instance
    last_num = list(last)[0] #gives last instance
    if i == 'January':
        combined['month_numeric'][first_num:last_num] = "01"
    elif i == 'February':
        combined['month_numeric'][first_num:last_num] = "02"
    elif i == 'March':
        combined['month_numeric'][first_num:last_num] = "03"
    elif i == 'April':
        combined['month_numeric'][first_num:last_num] = "04"
    elif i == 'May':
        combined['month_numeric'][first_num:last_num] = "05"
    elif i == 'June':
        combined['month_numeric'][first_num:last_num] = "06"
    elif i == 'July':
        combined['month_numeric'][first_num:last_num] = "07"
    elif i == 'August':
        combined['month_numeric'][first_num:last_num] = "08"
    elif i == 'September':
        combined['month_numeric'][first_num:last_num] = "09"
    elif i == 'October':
        combined['month_numeric'][first_num:last_num] = "10"
    elif i == 'November':
        combined['month_numeric'][first_num:last_num] = "11"
    elif i == 'December':
        combined['month_numeric'][first_num:last_num] = "12"

```