1
resposta

erro em dados.corr().round(4)

Erro quando solicito exibir a matriz de correlação dados.corr().round(4)

mensagem: ValueError Traceback (most recent call last) Cell In[23], line 1 ----> 1 dados.corr().round(4)

File ~\anaconda3\Lib\site-packages\pandas\core\frame.py:10054, in DataFrame.corr(self, method, min_periods, numeric_only) 10052 cols = data.columns 10053 idx = cols.copy()

10054 mat = data.to_numpy(dtype=float, na_value=np.nan, copy=False) 10056 if method == "pearson": 10057 correl = libalgos.nancorr(mat, minp=min_periods)

File ~\anaconda3\Lib\site-packages\pandas\core\frame.py:1838, in DataFrame.to_numpy(self, dtype, copy, na_value) 1836 if dtype is not None: 1837 dtype = np.dtype(dtype) -> 1838 result = self._mgr.as_array(dtype=dtype, copy=copy, na_value=na_value) 1839 if result.dtype is not dtype: 1840 result = np.array(result, dtype=dtype, copy=False)

File ~\anaconda3\Lib\site-packages\pandas\core\internals\managers.py:1732, in BlockManager.as_array(self, dtype, copy, na_value) 1730 arr.flags.writeable = False 1731 else: -> 1732 arr = self._interleave(dtype=dtype, na_value=na_value) 1733 # The underlying data was copied within _interleave, so no need 1734 # to further copy if copy=True or setting na_value 1736 if na_value is not lib.no_default:

File ~\anaconda3\Lib\site-packages\pandas\core\internals\managers.py:1794, in BlockManager._interleave(self, dtype, na_value) 1792 else: 1793 arr = blk.get_values(dtype) -> 1794 result[rl.indexer] = arr 1795 itemmask[rl.indexer] = 1 1797 if not itemmask.all():

ValueError: could not convert string to float: '01/01/2015'

1 resposta

Olá, boa noite! Tive o mesmo erro. Para resolver dentro da aplicação eu removi a coluna que indica as datas:

del banco_de_dados´["data"])

Pelo o que eu entendi a função não consegue converter a data para um tipo float e fazer a matriz de correlação. Sem esses dados eu consegui fazer todos os demais exemplos das aulas.

Espero que ajude

P.s: Acabei achando no forum soluções mais interessantes

https://cursos.alura.com.br/forum/topico-erro-ivalueerror-could-not-convert-string-to-float-01-01-2015-346510