Ontem, quando assisti à essa aula, consegui seguir todos os passos sem problemas. Contudo, hoje, quando fui executar o código novamente e seguir o módulo, todas as células do código que continham o seaborn me devolveram esse erro:
AttributeError: module 'numpy' has no attribute 'float'.
`np.float` was a deprecated alias for the builtin `float`. To avoid this error in existing code, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations
Em princípio achei que fosse mera questão de atualizar essa biblioteca. Atualizei o numpy, seaborn, matplotlib e o pandas, mas sem nenhum sucesso. Em alguns fóruns encontrei pessoas sugerindo o downgrade do numpy, por isso regredi para o 1.19.5, também sem sucesso. Outra solução sugerida foi deixar de usar o np.float e substituilo pelo np.float32, mas como esse comando não faz parte do código, não sei o que fazer.
Imagino que seja algum tipo de erro de compatibilidade entre o sns e o numpy. Como posso solucionar isso?
Essa é a mensagem de erro completa:
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
Cell In[100], line 6
3 ##print(contagem_lingua)
4 ##plt.hist(contagem_lingua)
5 plt.figure(figsize=(20,10))
----> 6 sns.barplot(x='língua original', y='total', data = contagem_lingua, palette='viridis')
7 plt.xticks(fontsize=14)
8 plt.yticks(fontsize=12)
File c:\Users\gabri\AppData\Local\Programs\Python\Python311\Lib\site-packages\seaborn\categorical.py:3146, in barplot(x, y, hue, data, order, hue_order, estimator, ci, n_boot, units, orient, color, palette, saturation, errcolor, errwidth, capsize, dodge, ax, **kwargs)
3140 def barplot(x=None, y=None, hue=None, data=None, order=None, hue_order=None,
3141 estimator=np.mean, ci=95, n_boot=1000, units=None,
3142 orient=None, color=None, palette=None, saturation=.75,
3143 errcolor=".26", errwidth=None, capsize=None, dodge=True,
3144 ax=None, **kwargs):
-> 3146 plotter = _BarPlotter(x, y, hue, data, order, hue_order,
3147 estimator, ci, n_boot, units,
3148 orient, color, palette, saturation,
3149 errcolor, errwidth, capsize, dodge)
3151 if ax is None:
3152 ax = plt.gca()
File c:\Users\gabri\AppData\Local\Programs\Python\Python311\Lib\site-packages\seaborn\categorical.py:1606, in _BarPlotter.__init__(self, x, y, hue, data, order, hue_order, estimator, ci, n_boot, units, orient, color, palette, saturation, errcolor, errwidth, capsize, dodge)
1601 def __init__(self, x, y, hue, data, order, hue_order,
...
AttributeError: module 'numpy' has no attribute 'float'.
`np.float` was a deprecated alias for the builtin `float`. To avoid this error in existing code, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations