sas limpando texto entre virgulas

786 palavras 4 páginas
Limpando arquivos de texto utilizando o software SAS Enterprise Guide.
Introdução
É comum, quando se trabalha com uma massa grande de dados, exportar na forma de texto. Entretanto, toda observação fica discriminada por linha e as variáveis associadas (categóricas e/ou numéricas) ficam concatenadas e separadas por vírgula. Quando se exporta desta forma as variáveis categóricas ficam registradas entre aspas. Porém, alguns textos trazem apóstrofes e outros caracteres que podem ser transformados em uma ou mais aspas. Essa situação ocasiona um erro de leitura, pois entre duas vírgulas passam a existir mais de um texto sem fechamento(mais de duas aspas). Para sanar esse tipo de problema, abaixo foi desenvolvido um algoritmo, para eliminar esses erros.
O arquivo original está organizado da seguinte forma:
Observação2(linha2) = “11” “00123” -9.56982 -45.6986 “fazenda olho d’agua” ….
Após transformação em texto fica como a seguir:
Observação2(linha2) = “11”,“00123”,-9.56982,-45.6986,“fazenda olho d”agua”, ….

É importante observar que no arquivo de dados trabalhado só se verificou apenas uma vez (dentro de cada observação), a condição de erro constituída por mais de duas aspas entre duas vírgulas (,“...“....”,). Logo o algoritmo escrito abaixo traz essa restrição. Casos diferentes terão que ser analisados para se verificar a necessidade de alteração do programa.

filename CATY
('\\xxxxxxx\xxxxxxxx\xxxxxxxxxxx\xxxxxxxxxxxxxxxx.txt')lrecl=350;
data
A;
infile CATY truncover; input @1
VAR
$350.;
RUN;
Acima está se lendo o arquivo original de texto e salvando como uma variável intitulada “VAR” com tamanho de até 350 caracteres.
DATA INICIO; SET A; run; data inicio2; set inicio;
X=0;
Y=0;
DO I=1 TO (LENGTH(VAR));
IF SUBSTR(VAR,I,1)= '"' THEN DO;
X = X+1; END;
IF SUBSTR(VAR,I,1)= ',' THEN DO;
Y = Y+1;
END;
END;
RUN;
No arquivo denominado inicio2 (acima) está se mostrando como se calcular o número de ‘”’ e de ‘,’ por observação e usando os comandos ‘DO’,‘substr’ e um acumulador. A

Relacionados

  • 2015226 165453 Pontua C3 A7 C3 A3o Gram C3 A1tica Jo C3 A3o Domingues Maia
    1897 palavras | 8 páginas
  • Breves noções da lingua portuguesa
    7981 palavras | 32 páginas
  • Secretariado
    14289 palavras | 58 páginas
  • Nova Ortografia
    33678 palavras | 135 páginas
  • Histologia
    54173 palavras | 217 páginas
  • 900 questões de gramática
    95037 palavras | 381 páginas
  • Fundamentos de jquery
    7100 palavras | 29 páginas
  • SQL Server
    34215 palavras | 137 páginas
  • Gramática completa
    46947 palavras | 188 páginas
  • gramatica
    43003 palavras | 173 páginas