ComeçarComece de graça

Carregando dados de spam de SMS

Você já viu que dá pra deduzir os tipos de dados diretamente dos dados. Às vezes, é legal poder controlar diretamente os tipos de coluna. Você faz isso definindo um esquema explícito.

O arquivo “ sms.csv ” tem uma seleção de mensagens SMS que foram classificadas como “spam” ou “ham”. Esses dados foram adaptados do Repositório de Machine Learning da UCI. Tem um total de 5.574 SMS, e 747 foram marcados como spam.

Observações sobre o formato CSV:

  • sem registro de cabeçalho e
  • Os campos são separados por um ponto e vírgula (esse não é o separador padrão).

Dicionário de dados:

  • id — identificador do registro
  • text — conteúdo da mensagem SMS
  • label — spam ou ham (número inteiro; 0 = ham e 1 = spam)

Este exercício faz parte do curso

Machine Learning com PySpark

Ver curso

Instruções do exercício

  • Especifique o esquema de dados, dando nomes às colunas ("id", "text" e "label") e tipos de coluna.
  • Lê os dados de um arquivo delimitado chamado “ "sms.csv" ”.
  • Imprima o esquema para o DataFrame resultante.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

from pyspark.sql.types import StructType, StructField, IntegerType, StringType

# Specify column names and types
schema = StructType([
    StructField("____", IntegerType()),
    ____("____", ____()),
    ____("____", ____())
])

# Load data from a delimited file
sms = spark.read.csv(____, sep=____, header=____, ____=____)

# Print schema of DataFrame
sms.____()
Editar e executar o código