Pyspark Menos funcionam

Pyspark Menos funcionam
No Pyspark Dataframe, é possível retornar os menores elementos em duas ou mais colunas.

Pyspark suporta a função Menos (), que é usada para encontrar os mínimos valores em várias colunas em todas as linhas em um Pyspark RDD ou em um pyspark Dataframe.

Está disponível no Pyspark.SQL.funções módulo.

Sintaxe
dataframe_obj.Selecione (Menos (dataframe_obj.Column1, dataframe_obj.coluna2,…))

Parâmetro:
São necessárias colunas como parâmetros.

Podemos acessar as colunas usando o '.'Operador (Column1, Column2, representa os nomes das colunas).

Dados
Aqui, criaremos um pyspark Dataframe que possui 5 colunas: ['sujeito_id', 'nome', 'idade', 'tecnologia1', 'tecnologia2'] com 10 linhas.

Importar Pyspark
de Pyspark.SQL Import SparkSession
Spark_App = SparkSession.construtor.nome do aplicativo('_').getorcreate ()
alunos = [(4, 'sravan', 23, 'php', 'testes'),
(4, 'sravan', 23, 'php', 'testing'),
(46, 'Mounika', 22, '.Net ',' html '),
(4, 'Deepika', 21, 'Oracle', 'html'),
(46, 'Mounika', 22, 'Oracle', 'Testing'),
(12, 'Chandrika', 22, 'Hadoop', 'C#'),
(12, 'Chandrika', 22, 'Oracle', 'Testing'),
(4, 'Sravan', 23, 'Oracle', 'C#'),
(4, 'Deepika', 21, 'Php', 'C#'),
(46, 'Mounika', 22, '.Net ',' teste ')
]
dataframe_obj = spark_app.CreatedataFrame (estudantes, ['sujeito_id', 'nome', 'idade', 'tecnologia1', 'tecnologia2']))
print ("---------- DataFrame ----------")
dataframe_obj.mostrar()

Saída:

Agora, veremos os exemplos para retornar os menos valores em duas ou várias colunas do DataFrame anterior.

Exemplo 1
Então, criamos o quadro de dados anterior. Agora, retornaremos os menos valores de sujeito_id e idade colunas.

# Importe o menor funcionamento do módulo - Pyspark.SQL.funções
de Pyspark.SQL.funções importam menos
#Compare as colunas - sujeito_id e envelhecer e retornar os valores mais baixos em cada linha.
dataframe_obj.Selecione (dataframe_obj.sujeito_id, dataframe_obj.idade, menos (dataframe_obj.sujeito_id, dataframe_obj.idade)).mostrar()

Saída:

Explicação
Você pode comparar os dois valores da coluna em cada linha.

menos (4,23) - 4
menos (4,23) - 4
Menos (46,22) -22
menos (4,21) - 4
menos (46,22) - 22
menos (12,22) - 12
menos (12,22) - 12
menos (4,23) - 4
menos (4,21) - 4
menos (46,22) - 22.

Exemplo 2
Criamos o quadro de dados anterior. Agora, retornaremos os menos valores de Nome, Technology1, e Technology2 colunas.

# Importe o menor funcionamento do módulo - Pyspark.SQL.funções
de Pyspark.SQL.funções importam menos
#Compare the Columns - Nome, Technology1, Technology2 e Age e retorne os valores mais baixos em cada linha.
dataframe_obj.Selecione (dataframe_obj.Nome, dataframe_obj.Technology1, dataframe_obj.Technology2,
Menos (dataframe_obj.Nome, dataframe_obj.Technology1, dataframe_obj.tecnologia2)).mostrar()

Saída:

Aqui, as strings são comparadas com base nos valores ASCII:

menos (sravan, php, testes) - php
menos (sravan, php, testes) - php
Menos (Mounika, .Net, html) - .LÍQUIDO
Menos (Deepika, Oracle, HTML) - HTML
Menos (Mounika, Oracle, Testing) - Oracle
Menos (Chandrika, Hadoop, C#) - C#
Menos (Chandrika, Oracle, Testing) - Oracle
menos (sravan, oracle, c#) - c#
menos (Deepika, Php, C#) - C#
Menos (Mounika,.Rede, teste) -.LÍQUIDO.

Código inteiro

Importar Pyspark
de Pyspark.SQL Import SparkSession
Spark_App = SparkSession.construtor.nome do aplicativo('_').getorcreate ()
alunos = [(4, 'sravan', 23, 'php', 'testes'),
(4, 'sravan', 23, 'php', 'testing'),
(46, 'Mounika', 22, '.Net ',' html '),
(4, 'Deepika', 21, 'Oracle', 'html'),
(46, 'Mounika', 22, 'Oracle', 'Testing'),
(12, 'Chandrika', 22, 'Hadoop', 'C#'),
(12, 'Chandrika', 22, 'Oracle', 'Testing'),
(4, 'Sravan', 23, 'Oracle', 'C#'),
(4, 'Deepika', 21, 'Php', 'C#'),
(46, 'Mounika', 22, '.Net ',' teste ')
]
dataframe_obj = spark_app.CreatedataFrame (estudantes, ['sujeito_id', 'nome', 'idade', 'tecnologia1', 'tecnologia2']))
print ("---------- DataFrame ----------")
dataframe_obj.mostrar()
# Importe o menor funcionamento do módulo - Pyspark.SQL.funções
de Pyspark.SQL.funções importam menos
#Compare as colunas - sujeito_id e envelhecer e retornar os valores mais baixos em cada linha.
dataframe_obj.Selecione (dataframe_obj.sujeito_id, dataframe_obj.idade, menos (dataframe_obj.sujeito_id, dataframe_obj.idade)).mostrar()
#Compare the Columns - Nome, Technology1, Technology2 e Age e retorne os valores mais baixos em cada linha.
dataframe_obj.Selecione (dataframe_obj.Nome, dataframe_obj.Technology1, dataframe_obj.Technology2,
Menos (dataframe_obj.Nome, dataframe_obj.Technology1, dataframe_obj.tecnologia2)).mostrar()

Conclusão

A função Minor () é usada para encontrar os valores mais baixos em várias colunas em todas as linhas em um Pyspark RDD ou em um quadro de dados Pyspark. Ele compara as colunas apenas com tipos de dados semelhantes. Caso contrário, ele aumentará a exceção de análise. As expressões devem ter o mesmo tipo.