jupyter报错:NameError: name 'CategoricalDtype' is not defined

jupyter报错一直报错,显示 NameError: name 'CategoricalDtype' is not defined ,应该咋样改呀


#核密度估计峰峦图
import pandas as pd
import numpy as np
import joypy
import matplotlib.pyplot as plt
from matplotlib import cm
import seaborn as sns
plt.rc('font',family='Times New Roman')
sns.set_context("notebook", font_scale=1.5,
                rc={'font.size': 12, 
                    'axes.labelsize': 20, 'legend.fontsize':15, 
                    'xtick.labelsize': 15,'ytick.labelsize': 15})

df = pd.read_csv("lincoln_weather.csv")
Categories=['January', 'February', 'March', 'April', 'May', 'June','July',
            'August','September', 'October', 'November','December']
df['Month']=df['Month'].astype(CategoricalDtype(categories=Categories,ordered=True))  #-------报错行--------

fig, axes = joypy.joyplot(df, column=["Mean.Temperature..F."], 
                          by="Month", ylim='own',colormap=cm.Spectral_r,#color='#FF8B19',
                          #hist=True,bins=30,
                          alpha= 0.9,figsize=(6,5))
plt.xlabel("Mean Temperature",{'size': 15 })
plt.ylabel("Month",{'size': 15 })
axes.set_axis_labels("Mean Temperature", "Month")   
plt.show()
#fig.savefig('joyplot.pdf')

报错:
NameError                                 Traceback (most recent call last)
d:\temp/ipykernel_45616/100926297.py in <module>
      7 Categories=['January', 'February', 'March', 'April', 'May', 'June','July',
      8             'August','September', 'October', 'November','December']
----> 9 df['Month']=df['Month'].astype(CategoricalDtype(categories=Categories,ordered=True))
     10 
     11 fig, axes = joypy.joyplot(df, column=["Mean.Temperature..F."], 

NameError: name 'CategoricalDtype' is not defined

CategoricalDtype 这个函数(?)没有声明或者引用,不能直接用。