Oii, Albert! Tudo bem?
Peço desculpas pela demora para te responder.
Pude perceber que já finalizou o curso e espero que tenha dado tudo certo! Mas, quanto a sua dúvida, no Spark, o método fill()
é usado para substituir valores nulos (None, NaN) em um DataFrame, porém, ele é um pouco específico em relação ao tipo de dados que substitui.
Quando se usa socios.na.fill(0)
, o Spark procura por colunas numéricas (int
, float
) que têm valores nulos e os substitui por 0. Seguindo o mesmo raciocínio, quando você usa socios.na.fill('-')
, o Spark procura por colunas de string, com valores nulos e os substitui por '-'.
Para substituir tanto números quanto strings ao mesmo tempo, pode-se usar um dicionário como argumento para o método fill()
. O dicionário deve ter nomes de colunas como chaves e os valores que você deseja usar para substituir os nulos como valores.
Para aprofundar seus conhecimentos, recomendo a leitura do artigo da Alura que aborda sobre o uso do dicionário. Segue o link:
Espero ter ajudado. Continue interagindo no fórum compartilhando suas dúvidas, sugestões e feedback.
Bons estudos, Albert!