O que eu estou fazendo de errado? Tentei resolver convertendo faixa etária para double.
socios = socios.withColumn('faixa_etaria', socios['faixa_etaria'].cast(DoubleType()))
socios\
.select('cnpj_basico', 'data_de_entrada_sociedade', 'faixa_etaria', 'cnpj_ou_cpf_do_socio')\
.groupBy('data_de_entrada_sociedade')\
.agg(\
f.avg('faixa_etaria').alias('faixa_etaria_media'),\
f.count('cnpj_ou_cpf_do_socio').alias('frequencia'))\
.where('data_de_entrada_sociedade >= 2010')\
.orderBy('data_de_entrada_sociedade', ascending=True)\
.show()
O resultado é uma mensgem de erro enorme:
AnalysisException Traceback (most recent call last)
<ipython-input-54-33e377fb370c> in <module>
18 f.avg('faixa_etaria').alias('faixa_etaria_media'),\
19 f.count('cnpj_ou_cpf_do_socio').alias('frequencia'))\
---> 20 .where('data_de_entrada_sociedade >= 2010')\
21 .orderBy('data_de_entrada_sociedade', ascending=True)\
22 .show()
2 frames
/content/spark-3.1.2-bin-hadoop2.7/python/pyspark/sql/utils.py in deco(*a, **kw)
115 # Hide where the exception came from that shows a non-Pythonic
116 # JVM exception message.
--> 117 raise converted from None
118 else:
119 raise
#comentário de erro continua abaixo...