「Pythonデータ分析の基礎」ggplot:AttributeError:モジュール「pandas」には属性「tslib」がありません



Basics Python Data Analysisggplot



'Python Data Analysis Fundamentals' 6.3ggplotの使用中にエラーが報告されました

from ggplot import * print(diamonds.head())

画像
エラーレポートに従って開く
注:変更する場合は、パンダの関数名またはメソッド名ではなく、ggplotの関数名またはメソッド名を変更してください。
画像
画像



date_types = ( pd.tslib.Timestamp, pd.DatetimeIndex, pd.Period, pd.PeriodIndex, datetime.datetime, datetime.time)

パンダのtslibエイリアス_tslib
_tslibに変更した後、引き続きModuleNotFoundErrorを報告します:「pandas.lib」という名前のモジュールはありません
画像

上記の手順に従って編集を続行します



from pandas.lib import Timestamp #change into from pandas._libs import Timestamp

エラーの報告を続ける:AttributeError:モジュール「pandas」には属性「tslib」がありません
画像
編集を続ける:

date_types = ( pd.tslib.Timestamp, pd.DatetimeIndex, pd.Period, pd.PeriodIndex, datetime.datetime, datetime.time) #change into date_types = ( pd._tslib.Timestamp, pd.DatetimeIndex, pd.Period, pd.PeriodIndex, datetime.datetime, datetime.time)

3回の変更で成功
画像

理由:バージョンの問題である可能性があります。つまり、最新バージョンのパンダとggplotの間にバージョンのギャップがあります。つまり、ggplotは古いバージョンのパンダを参照しています。
ggplotの最新バージョンも2016年にあり、更新されていません
画像



しかし、私のパンダは1.0.1の新しいバージョンです
画像
pandas1.0.1は2020年にリリースされます
画像
そのため、関数名が変更されたため、変更するときはggplotを変更することをお勧めします。パンダを変更すると、他のマッドルの使用に影響します。

from ggplot import * print(diamonds.head()) plt3 = ggplot(diamonds, aes(x='carat', y='price', color='cut')) + geom_point(alpha=0.5) + scale_color_gradient(low='#05D9F6', high='#5011D1') + xlim(0,6) + ylim(0,20000) + xlab('Carat') +ylab('Price') + ggtitle('Diamond Price By Carat and Cut') + theme_gray() print(plt3) ggplot.save(plt3,'ggplot_plots.png') #The source code here is ggsave(plt3,'ggplot_plots.png'), #Should be modified to ggplot.save(plt3,'ggplot_plots.png')

それ以外の場合は、エラーが報告されます:NameError:名前「ggsave」が定義されていません
画像
描かれる最終的な図は次のとおりです。
画像