Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Problemas com fillna

Ola, tentei seguir os passos do professor e fazer

setor.fillna(0)

mas obtenho o seguinte erro

---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call last)
<ipython-input-43-cddbfd88e8f1> in <module>
----> 1 setor.fillna(0)

~\Anaconda3\lib\site-packages\pandas\core\frame.py in fillna(self, value, method, axis, inplace, limit, downcast)
   4151             inplace=inplace,
   4152             limit=limit,
-> 4153             downcast=downcast,
   4154         )
   4155 

~\Anaconda3\lib\site-packages\pandas\core\generic.py in fillna(self, value, method, axis, inplace, limit, downcast)
   6235             elif not is_list_like(value):
   6236                 new_data = self._data.fillna(
-> 6237                     value=value, limit=limit, inplace=inplace, downcast=downcast
   6238                 )
   6239             elif isinstance(value, ABCDataFrame) and self.ndim == 2:

~\Anaconda3\lib\site-packages\pandas\core\internals\managers.py in fillna(self, **kwargs)
    574 
    575     def fillna(self, **kwargs):
--> 576         return self.apply("fillna", **kwargs)
    577 
    578     def downcast(self, **kwargs):

~\Anaconda3\lib\site-packages\pandas\core\internals\managers.py in apply(self, f, filter, **kwargs)
    440                 applied = b.apply(f, **kwargs)
    441             else:
--> 442                 applied = getattr(b, f)(**kwargs)
    443             result_blocks = _extend_blocks(applied, result_blocks)
    444 

~\Anaconda3\lib\site-packages\pandas\core\internals\blocks.py in fillna(self, value, limit, inplace, downcast)
   1874     def fillna(self, value, limit=None, inplace=False, downcast=None):
   1875         values = self.values if inplace else self.values.copy()
-> 1876         values = values.fillna(value=value, limit=limit)
   1877         return [
   1878             self.make_block_same_class(

~\Anaconda3\lib\site-packages\geopandas\array.py in fillna(self, value, method, limit)
    834         elif not isinstance(value, BaseGeometry):
    835             raise NotImplementedError(
--> 836                 "fillna currently only supports filling with a scalar geometry"
    837             )
    838 

NotImplementedError: fillna currently only supports filling with a scalar geometry

Alguem poderia me ajudar? Se eu uso o fillna para uma series, separando uma das colunas do nosso GeoDataFrame funciona perfeitamente, mas ao usar no GeoDataFrame inteiro acusa erro

2 respostas
solução!

Alguém?

Oi Ricardo,

Quais as versões dos pacotes pandas e geopandas no seu sistema? Use o seguinte código para verificar:

import pandas as pd
import geopandas as gpd

print(pd.__version__)
print(gpd.__version__)