Os campos de uma coleção no mongo possuem tipos. Para cada tipo existe uma numero que o identifica. Na documentação do mongodb é possível conferir a tabela de tipo. Caso você necessite alterar o tipo de um campo nos documentos de sua coleção, uma ideia poderia ser filtrar pelo campo que inda possui o tipo antigo e alterar para o novo. Como no exemplo abaixo alterando de string para int64.
Quando realizamos consultas no pyspark muitas vezes nos deparamos com cenários onde o tipo de coluna do dataframe não é o esperado. Precisamos por exemplo fazer alguma operação de maior e menor, soma, média, porém o tipo do dado esta como string. Para contornar este cenário você pode realizar cast no tipo da coluna pySpark. Abaixo segue exemplo de como converter para inteiro; #lendo o arquivo csv spark = SparkSession . builder . getOrCreate() athlete_events_spark = (spark . read . csv( "athlete_events.csv" , header = True, inferSchema = True, escape = '"' )) #modificando tipo da coluna que era string para inteiro athlete_events_spark = (athlete_events_spark . withColumn( "Height" , athlete_events_spark . Height . cast( "integer" ))) #imprimindo resultados e realizando operações matemáticas print (athlete_events_spark ...
Comentários
Postar um comentário