### 前提・実現したいこと
seabornを使ってデータの可視化を行おうとしています。
barplotの機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
TypeError Traceback (most recent call last) <ipython-input-4-b2827cd55ca6> in <module> ----> 1 sns.barplot(tips.day,tips.total_bill) ~\anaconda3\lib\site-packages\seaborn\categorical.py in barplot(x, y, hue, data, order, hue_order, estimator, ci, n_boot, units, seed, orient, color, palette, saturation, errcolor, errwidth, capsize, dodge, ax, **kwargs) 3148 estimator, ci, n_boot, units, seed, 3149 orient, color, palette, saturation, -> 3150 errcolor, errwidth, capsize, dodge) 3151 3152 if ax is None: ~\anaconda3\lib\site-packages\seaborn\categorical.py in __init__(self, x, y, hue, data, order, hue_order, estimator, ci, n_boot, units, seed, orient, color, palette, saturation, errcolor, errwidth, capsize, dodge) 1615 order, hue_order, units) 1616 self.establish_colors(color, palette, saturation) -> 1617 self.estimate_statistic(estimator, ci, n_boot, seed) 1618 1619 self.dodge = dodge ~\anaconda3\lib\site-packages\seaborn\categorical.py in estimate_statistic(self, estimator, ci, n_boot, seed) 1517 n_boot=n_boot, 1518 units=unit_data, -> 1519 seed=seed) 1520 confint.append(utils.ci(boots, ci)) 1521 ~\anaconda3\lib\site-packages\seaborn\algorithms.py in bootstrap(*args, **kwargs) 83 for i in range(int(n_boot)): 84 resampler = integers(0, n, n) ---> 85 sample = [a.take(resampler, axis=0) for a in args] 86 boot_dist.append(f(*sample, **func_kwargs)) 87 return np.array(boot_dist) ~\anaconda3\lib\site-packages\seaborn\algorithms.py in <listcomp>(.0) 83 for i in range(int(n_boot)): 84 resampler = integers(0, n, n) ---> 85 sample = [a.take(resampler, axis=0) for a in args] 86 boot_dist.append(f(*sample, **func_kwargs)) 87 return np.array(boot_dist) TypeError: Cannot cast array data from dtype('int64') to dtype('int32') according to the rule 'safe'
該当のソースコード
python
1import seaborn as sns 2import pandas as pd 3import matplotlib.pyplot as plt 4import numpy as np 5%matplotlib inline 6tips=pd.read_csv("./tips/tips.csv") 7sns.barplot(tips.day,tips.total_bill)
試したこと
total_bill=tips.total_bill.astype('float32')
tip=tips.tip.astype('float32')
size=tips.size.astype('int32')
(64ビットのデータを32ビットに変える)
Tips=pd.DataFrame({'total_bill':tips.total_bill.astype('float32'),'tip':tips.tip.astype('float32'),'sex':tips.sex,'smoker':tips.smoker,'day':tips.day,'time':tips.time,'size':tips.size.astype('int32')})
(新たなデータフレームを作る)
sns.barplot(Tips.day,Tips.total_bill)
⇒ 上記と全く同じエラーが表示されました。
補足情報(FW/ツールのバージョンなど)
jupyterを使用しています
<tips.csvのデータの情報>
tipsに格納されたデータの型は以下のようになっています。(print(tips.dtypes))
total_bill float64
tip float64
sex object
smoker object
day object
time object
size int64
dtype: object