Verifique se os dados fornecidos são Pyspark RDD ou DataFrame

Verifique se os dados fornecidos são Pyspark RDD ou DataFrame

Em Python, Pyspark é um módulo Spark usado para fornecer um tipo semelhante de processamento como o Spark.

RDD significa conjuntos de dados distribuídos resilientes. Podemos chamar RDD de estrutura de dados fundamental no Apache Spark.

Sintaxe:

1
Spark_App.SparkContext.paralelize (dados)

Podemos exibir os dados em um formato tabular. A estrutura de dados usada é dataframe.Formato tabular significa que armazena dados em linhas e colunas.

Sintaxe:

Em Pyspark, podemos criar um aplicativo de dados de dados do Spark com o método CreateDataFrame ().

Sintaxe:

1
Spark_App.CreatedataFrame (input_data, colunas)

Onde input_data pode ser um dicionário ou uma lista para criar um quadro de dados a partir desses dados, e se o input_data for uma lista de dicionários, as colunas não serão necessárias. Se for uma lista aninhada, temos que fornecer os nomes das colunas.

Agora, vamos discutir como verificar os dados fornecidos em Pyspark RDD ou DataFrame.

Criação de Pyspark RDD:

Neste exemplo, criaremos um RDD chamado estudantes e exibiremos o uso de colecionamento ().

#import o módulo Pyspark
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
# importar rdd do Pyspark.rdd
de Pyspark.RDD Import rdd
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = spark_app.SparkContext.paralelize ([
'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']))
#Display o RDD usando colecionamento ()
Imprimir (alunos.colet ()))

Saída:

['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']

Criação do Pyspark DataFrame:

Neste exemplo, criaremos um DataFrame chamado DF a partir dos dados dos alunos e o exibiremos usando o método show ().

#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: IsInstance ()

No método Python, o método isinstance () é usado para comparar o objeto especificado (dados) com o tipo (rdd/dataframe)

Sintaxe:

1
isinstance (objeto, rdd/dataframe)

São necessários dois parâmetros:

Parâmetros:

  1. objeto refere -se aos dados
  2. RDD é o tipo disponível no Pyspark.Módulo RDD e DataFrame é o tipo disponível no Pyspark.Módulo SQL

Ele retornará valores booleanos (true/false).

Suponha que os dados sejam RDD e o tipo também seja RDD, então eles retornarão verdadeiro, caso contrário, retornará falsa.

Da mesma forma, se os dados forem dados e tipo também forem dados de dados, ele retornará true, caso contrário, retornará falsa.

Exemplo 1:

Verifique se há objeto RDD

Neste exemplo, aplicaremos isinstance () para objeto RDD.

#import o módulo Pyspark
Importar Pyspark
#Import SparkSession e DataFrame para criar uma sessão
de Pyspark.SQL Import SparkSession, DataFrame
# importar rdd do Pyspark.rdd
de Pyspark.RDD Import rdd
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = spark_app.SparkContext.paralelize ([
'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']))
#verifique se o objeto dos alunos for RDD
Impressão (Isinstance (alunos, RDD))
#Verifique se o objeto dos alunos for dataframe
Imprimir (IsInstance (alunos, DataFrame))

Saída:

1
2
3
Verdadeiro
Falso

Primeiro, comparamos os alunos com o RDD; Retornou verdadeiro porque é um RDD; E então comparamos os alunos com o DataFrame, ele retornou false porque é um RDD (não um DataFrame).

Exemplo 2:

Verifique o objeto DataFrame

Neste exemplo, aplicaremos isinstance () para o objeto DataFrame.

#import o módulo Pyspark
Importar Pyspark
#Import SparkSession, DataFrame para criar uma sessão
de Pyspark.SQL Import SparkSession, DataFrame
#import a função col
de Pyspark.SQL.funções Importar col
# importar rdd do Pyspark.rdd
de Pyspark.RDD Import rdd
#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)
#verifique se o DF for RDD
Impressão (IsInstance (DF, RDD))
#verifique se o DF for dataframe
Imprimir (IsInstance (DF, DataFrame))

Saída:

1
2
3
Falso
Verdadeiro

Primeiro, comparamos o DF com o RDD; Retornou False porque é um DataFrame e, em seguida, comparamos o DF com o DataFrame; Retornou verdadeiro porque é um DataFrame (não um RDD).

Método 2: Tipo ()

Em Python, o método tipo () retorna a classe do objeto especificado. É preciso objeto como um parâmetro.

Sintaxe:

1
tipo (objeto)

Exemplo 1:

Verifique se há um objeto RDD.

Aplicaremos o tipo () ao objeto RDD.

#import o módulo Pyspark
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
# importar rdd do Pyspark.rdd
de Pyspark.RDD Import rdd
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = spark_app.SparkContext.paralelize ([
'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']))
#Verifique o tipo de estudante
Imprimir (Tipo (alunos))

Saída:

1

Podemos ver que a classe RDD é devolvida.

Exemplo 2:

Verifique o objeto DataFrame.

Aplicaremos o tipo () no objeto DataFrame.

#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)
#verifique o tipo de df
Imprimir (tipo (df))

Saída:

1

Podemos ver que a classe DataFrame é retornada.

Conclusão

No artigo acima, vimos duas maneiras de verificar se os dados ou objeto fornecidos são um RDD ou DataFrame usando o isinstance () e o tipo (). Você deve observar que o ISInstance () resulta em valores booleanos com base no objeto especificado - se o tipo de objeto for o mesmo, ele retornará verdadeiro, caso contrário, false. E tipo () é usado para retornar a classe dos dados ou objeto fornecido.