# Dados Não Estruturados

Para se trabalhar com dados não estruturas é necessário carregá-los num formato estruturado. A forma mais simples é utilizando a procedure IMPORT para carregar os dados em uma tabela SAS. O comando possui a seguinte sintaxe:

PROC IMPORT DATAFILE="caminho/nome-arquivo" DBMS=tipo-arquivo OUT=tabela-destino; RUN;

Onde:

  • DATAFILE - Nome e o caminho completo para o arquivo;
  • DBMS - Define o tipo de arquivo que será lido;
  • OUT - Biblioteca e nome da tabela de saída que receberá os dados.

TIP

Com o IMPORT importamos dados de arquivos com qualquer caracter delimitador.

# Identificadores DBMS do Base SAS

  • CSV - valores separados por vírgula;
  • TAB - valores delimitado por tabulação;
  • DLM - arquivos delimitados, sendo o espaço o delimitador padrão. Para usar um caracter diferemte use a opção DELIMITER=
  • JMP - formato de arquivo criado pelo programa JMP (opens new window).

# Identificadores DBMS Adicionais

Estes identificadores estão disponíveis no pacote "SAS/ACCESS Interface to PC":

  • XLSX - Microsoft Excel 2007, 2010 e superior; e
  • ACCESS - Microsoft Access 2000 e os mais recentes.

# As opções REPLACE e GUESSINGROWS

Por padrão, o SAS interpreta que a primeira linha do arquivo possui o nome das colunas, mas podemos modificar a forma como os dados são interpretados pelo SAS adicionando parametros ao comando inicial:

  • Com REPLACE, instruimos o SAS a substituir os dados da tabela destino:

PROC IMPORT DATAFILE="caminho/nome-arquivo" DBMS=ipo-arquivo OUT=tabela-destino\<REPLACE\>;

RUN;

  • O SAS lê as primeiras 20 linhas do arquivo para descobrir os tiposde dados e tamanhos. Com GUESSINGROWS, o instruimos para ler um número n ou todas as linhas do arquivo com MAX:

PROC IMPORT DATAFILE="caminho/nome-arquivo" DBMS=ipo-arquivo OUT=tabela-destino \<GUESSINGROWS=n|MAX;\>;

RUN;

Exemplo:

proc import datafile="e:/analise/faturamento/data/inadimplentes_fev_2015-2018.csv"
 dbms=tab
 out=inadimplentes
 replace;
 guessingrows=max;
run;

# Importando dados do Excel

Ao trabalhar com bibliotecas LIBNAME com o Excel os programas que acessam os dados da planilha estarão usando os dados atuais. Em várias situações é necessário ter acesso aos dados congelados. Para tal, podemos fazer uma cópia da planilha com o PROC IMPORT.

PROC IMPORT DATAFILE="caminho/nome-arquivo" 
            DBMS=XLSX
            OUT=tabela-destino;
            SHEET=nome-planilha;
RUN;

TIP

PROC IMPORT lê somente uma planilha por vez e por padrão, a primeira planilha do arquivo será copiada. Para selecionar uma planilha diferente, informe o noma da mesma com a opção SHEET