No Python, Pyspark é um módulo Spark usado para fornecer um tipo semelhante de processamento como o Spark usando o DataFrame. Discutiremos como adicionar nova coluna ao Pyspark Dataframe existente.
Antes de mudar para os métodos, criaremos o Pyspark DataFrame.
Exemplo:
Aqui, vamos criar dados de dados Pyspark com 5 linhas e 6 colunas.
#import o módulo Pyspark
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#import a função col
de Pyspark.SQL.funções Importar col
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23,
'Altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16,
'Altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7,
'Altura': 2.79, 'Peso': 17, 'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9,
'Altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37,
'Altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
#Display O DataFrame
df.mostrar()
Saída:
Método 1: Adicione uma nova coluna com valores usando WithColumn ()
Podemos adicionar nova coluna de uma coluna existente usando o método withcolumn ().
Sintaxe:
quadro de dados.withcolumn ("new_column", col ("column_name"))
Parâmetros:
- new_column é a coluna.
- A função col () é usada para adicionar seus valores de coluna ao new_column.
Exemplo:
Neste exemplo, vamos criar uma nova coluna - “Power” e adicionar valores a esta coluna multiplicando cada valor na coluna de peso por 10.
#import o módulo PysPaprk
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#import a função col
de Pyspark.SQL.funções Importar col
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23,
'Altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16,
'Altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7,
'Altura': 2.79, 'Peso': 17, 'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9,
'Altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37,
'Altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
#Add coluna chamada Power
#da coluna de peso multiplicada por 2
df = df.Withcolumn ("Power", Col ("Peso")* 2)
#Display Modificado DataFrame
Imprimir (df.colet ()))
#Lets exibem o esquema
df.PrintSchema ()
Saída:
[Linha (endereço = 'guntur', idade = 23, altura = 5.79, nome = 'sravan', rollno = '001', peso = 67, potência = 134), linha (endereço = 'hyd', idade = 16, altura = 3.79, nome = 'ojaswi', rollno = '002', peso = 34, potência = 68), linha (endereço = 'patna', idade = 7, altura = 2.79, nome = 'gnanesh Chowdary', rollno = '003', peso = 17, potência = 34), linha (endereço = 'hyd', idade = 9, altura = 3.69, nome = 'rohith', rollno = '004', peso = 28, potência = 56), linha (endereço = 'hyd', idade = 37, altura = 5.59, nome = 'sridevi', rollno = '005', peso = 54, potência = 108)]
raiz
|- Endereço: String (Nullable = true)
|- Idade: Long (Nullable = True)
|- Altura: dupla (anulável = true)
|- Nome: String (Nullable = True)
|- rolno: string (nullable = true)
|- Peso: longo (nulo = true)
|- Poder: Long (Nullable = True)
Método 2: Adicione uma nova coluna com nenhum valores usando o WithColumn ()
Podemos adicionar nova coluna com nenhum valores usando o método withcolumn () através da função lit ().
Sintaxe:
quadro de dados.withcolumn ("new_column", iluminado (nenhum))
Parâmetros:
- new_column é a coluna.
- Lit () é uma função usada para adicionar valores à coluna.
Exemplo:
Neste exemplo, vamos criar uma nova coluna - "Power" e adicionar nenhum valores a esta coluna.
#import o módulo PysPaprk
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#Import the col, Lit Functions
de Pyspark.SQL.funções Importar Col, Lit
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23,
'Altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16,
'Altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7,
'Altura': 2.79, 'Peso': 17, 'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9,
'Altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37,
'Altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
#Add coluna chamada Power
# com nenhum valores
df = df.Withcolumn ("Power", Lit (Nenhum))
#Display Modificado DataFrame
Imprimir (df.colet ()))
Saída:
[Linha (endereço = 'guntur', idade = 23, altura = 5.79, nome = 'sravan', rollno = '001', peso = 67, potência = nenhum), linha (endereço = 'hyd', idade = 16, altura = 3.79, nome = 'ojaswi', rollno = '002', peso = 34, potência = nenhum), linha (endereço = 'patna', idade = 7, altura = 2.79, nome = 'gnanesh Chowdary', rollno = '003', peso = 17, potência = nenhum), linha (endereço = 'hyd', idade = 9, altura = 3.69, nome = 'rohith', rollno = '004', peso = 28, potência = nenhum), linha (endereço = 'hyd', idade = 37, altura = 5.59, nome = 'sridevi', rollno = '005', peso = 54, potência = nenhum)]]
Método 3: Adicione uma nova coluna com valores com base na condição usando o WithColumn ()
Podemos adicionar nova coluna com condições usando o método WithColumn () e valores através da função LIT (). Podemos especificar as condições usando quando () função. Isso pode ser importado do Pyspark.SQL.funções.
Sintaxe:
quadro de dados.withcolumn ("new_column", quando ((dataframe.coluna < 11), lit("value1"))
.Quando ((condição), iluminado ("value2")))
..
. Quando ((condição), iluminado ("valor n")))
.Caso contrário (Lit ("Value")))
Parâmetros:
- new_column é a coluna.
- Lit () é uma função usada para adicionar valores à coluna.
- Quando () tomará a condição como entrada e adiciona valores com base nos critérios atendidos.
- Caso contrário () é o último passo que executará qualquer uma das condições acima não atendem aos critérios.
Exemplo:
Neste exemplo, vamos criar uma nova coluna - "Power" e adicionar valores da coluna de idade.
- Adicione baixo valor se a idade for menor que - 11
- Adicione alto valor se a idade for menor ou igual a - 12 e maior ou igual a - 20
- Caso contrário, adicione alto valor
#import o módulo PysPaprk
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#import o col, iluminado, quando funções
de Pyspark.SQL.funções importam col, iluminado, quando
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23,
'Altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16,
'Altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7,
'Altura': 2.79, 'Peso': 17, 'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9,
'Altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37,
'Altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
#Add A Column - Power
#Add Column Vales com base na coluna AGE
#By especificando as condições
df.withcolumn ("Power", quando ((df.idade < 11), lit("Low"))
.Quando ((df.idade> = 12) e (df.idade <= 20), lit("Medium"))
.caso contrário (iluminado ("alto")))).mostrar()
Saída:
Método 4: Adicione nova coluna com valores usando select ()
Podemos adicionar nova coluna de uma coluna existente usando o método select ().
Sintaxe:
quadro de dados.Selecione (aceso (DF.coluna).Alias ("new_column"))
Parâmetros:
- new_column é a coluna.
- A função lit () é usada para adicionar valores de coluna ao new_column.
Exemplo:
Neste exemplo, vamos criar uma nova coluna - “Power” e adicionar valores a esta coluna multiplicando cada valor na coluna de peso por 10.
#import o módulo PysPaprk
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#Import the col, Lit Functions
de Pyspark.SQL.funções Importar Col, Lit
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23,
'Altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16,
'Altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7,
'Altura': 2.79, 'Peso': 17, 'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9,
'Altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37,
'Altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
#Add Coluna chamada - Power from Weight Coluna
# Adicione valores multiplicando com 10
df.Selecione ("rollno", iluminado (df.peso * 10).Alias ("Power"))).mostrar()
Saída:
Método 5: Adicione nova coluna com nenhum valores usando select ()
Podemos adicionar nova coluna com valores nulos usando o método select ().
Sintaxe:
quadro de dados.Selecione (iluminado (nenhum).Alias ("new_column"))
Parâmetros:
- new_column é a coluna
- A função lit () é usada para adicionar nenhum valores
Exemplo:
Neste exemplo, vamos criar uma nova coluna - "Power" e adicionar nenhum valores a esta coluna.
#import o módulo PysPaprk
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#Import the col, Lit Functions
de Pyspark.SQL.funções Importar Col, Lit
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23,
'Altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16,
'Altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7,
'Altura': 2.79, 'Peso': 17, 'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9,
'Altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37,
'Altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
#Add coluna chamada - Power
# Adicione valores nulos com nenhum
df.Selecione ("rollno", iluminado (nenhum).Alias ("Power"))).mostrar()
Saída:
Conclusão
Neste tutorial, discutimos como adicionar uma nova coluna usando as funções selecion () e withcolumn (). Observamos que Lit () é a função usada para adicionar valores à nova coluna. Finalmente, discutimos como adicionar valores não/nulos e os valores das colunas existentes ao Pyspark Dataframe.