Como definir a precisão da exibição no PySpark Dataframe show
Como você define a precisão de exibição no PySpark ao chamar.show()
?
Considere o seguinte exemplo:
from math import sqrt
import pyspark.sql.functions as f
data = zip(
map(lambda x: sqrt(x), range(100, 105)),
map(lambda x: sqrt(x), range(200, 205))
)
df = sqlCtx.createDataFrame(data, ["col1", "col2"])
df.select([f.avg(c).alias(c) for c in df.columns]).show()
Quais saídas:
#+------------------+------------------+
#| col1| col2|
#+------------------+------------------+
#|10.099262230352151|14.212583322380274|
#+------------------+------------------+
Como posso alterá-lo para exibir apenas 3 dígitos após o ponto decimal?
Saída desejada:
#+------+------+
#| col1| col2|
#+------+------+
#|10.099|14.213|
#+------+------+
Esta é uma versão do PySpark doesta pergunta de scala. Estou postando aqui porque não consegui encontrar uma resposta ao procurar soluções PySpark e acho que pode ser útil para outras pessoas no futuro.