Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > SAS Base
SAS Base Forum d'entraide sur SAS base : étape data, procédures non statistiques, procédures non graphiques, SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/10/2011, 12h52   #1
Nouveau Membre du Club
 
Inscription : janvier 2011
Messages : 180
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 180
Points : 34
Points : 34
Par défaut Importation fichier texte

Bonjour,

Voici mon problème j'ai importé un fichier text avec tabulation comme séparateur (fichier qui lui même vient d'une exportation de BrioQuery) dans SAS;le fichier a bien été importé sauf que certaines cases affichent des valeurs à moitié ou carrément pas de valaurs.
J'ai examiné les colonnes concernées de prêts et j'ai remarqué qu'elles toutes un point commun: la majorité de leurs cases sont vides et celles qui ne sont pas sont elles qui contiennent des valeurs imcomplètes.

J'ai utilisé pour mon importation la proc import:

Code :
1
2
3
4
5
6
PROC IMPORT OUT= essai11
DATAFILE= 'S:\AM\04. Projets\2011-06_ktp\0. perso\Texte\Essai11.txt'
DBMS=TAB REPLACE;
GETNAMES=YES;
DATAROW=2;
RUN;
Merci d'avance pour votre aide

Kedmard
kedmard est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/10/2011, 13h49   #2
Modérateur
 
Homme Samir SELMANE
Consultant en Business Intelligence
Inscription : février 2011
Messages : 1 011
Détails du profil
Informations personnelles :
Nom : Homme Samir SELMANE
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : février 2011
Messages : 1 011
Points : 1 712
Points : 1 712
Hello;
Tu passes par une étape DATA avec un INFILE; tu pourra mieux gérer les positions de tes variables ainsi que les longueurs.
s_a_m est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/10/2011, 14h19   #3
Nouveau Membre du Club
 
Inscription : janvier 2011
Messages : 180
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 180
Points : 34
Points : 34
Salut,
jai 45 variable faire un "INFILE" serait je pense emcombrant vu qu'il faut ensuite un " input" pour lister toutes ces variables; je cherche un moyen qui m'évite de liste toutes les 45 variables.
kedmard est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/10/2011, 14h27   #4
Modérateur
 
Homme Samir SELMANE
Consultant en Business Intelligence
Inscription : février 2011
Messages : 1 011
Détails du profil
Informations personnelles :
Nom : Homme Samir SELMANE
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : février 2011
Messages : 1 011
Points : 1 712
Points : 1 712
45? c'est rein du tout ça . Bah tu fais copier la première ligne de ton ficheir Text et tu la colle dans l'input et éventuellement le length , ...
Sinon peux tu poster quelques lignes de ton fichier qui te pose problème?
s_a_m est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 14/10/2011, 16h21   #5
Nouveau Membre du Club
 
Inscription : janvier 2011
Messages : 180
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 180
Points : 34
Points : 34
j'ai essayé un infile, j'ai ceci comme message d'érreur:


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
22 : impossible de déterminer LINE et COLUMN.
NOTE 242-205: NOSPOOL est actif. Relancer avec l'OPTION SPOOL peut permettre de trouver la LIGNE
              et la COLONNE où l'erreur est intervenue.
ERROR 22-322:  requis.un nom.
ERROR: Suffixe numérique manquant dans la liste de VARIABLES numérotées (Periode-NAME).
734
735  run;
 
NOTE: Le Système SAS a interrompu le traitement de cette étape en raison d'erreurs.
WARNING: La table WORK.SA est peut-être incomplète.  Lorsque cette étape a été stoppée, il y
         avait 0 observation(s) et 44 variable(s).
WARNING: Table WORK.SA non remplacée car cette étape a été interrompue.
NOTE: L'étape DATA a utilisé (Durée totale du traitement) :
      temps réel          0.00 secondes
      temps UC            0.00 secondes


Certaines variables de mon fichier texte avait des noms scomposés et séparés j'ai donc dû les joindre par _ et j'ai lancé le code suivant:

Code :
1
2
3
4
5
6
7
 
 
 
DATA sa1 
INFILE 'S:\LM\04. Projets\2011-06_Te\0. perso\Texte\Essai11.txt'
Indicateur_Reserve	Type_Taux	Mode_R	Duree_Credit_Accorde	Libelle	Periode	Num_Echeance	Num_Echeance2	Date_Echeance	Date_Echeance2	Type_Echeance	Type_Echeance2	Mnt_Amortissement	Mnt_Amortissement2	Totalamortissement	Ecart	Age_ECH	Age_RA	Datematurinit	DRAC_ECH	DRAC_RA	Test_RA	Montant_RA	Periode-1	Mtcapitalrestantdu2	crdnmoins1	CheckCRDnmoins1	AgeRA_P100	Matricule	promo	CRDtheorie	Poucent_RA	Generation;
run;
Qui m'a donné l'erreur ci-dessus
kedmard est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/10/2011, 16h29   #6
Modérateur
 
Homme Samir SELMANE
Consultant en Business Intelligence
Inscription : février 2011
Messages : 1 011
Détails du profil
Informations personnelles :
Nom : Homme Samir SELMANE
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : février 2011
Messages : 1 011
Points : 1 712
Points : 1 712
hoo;
il faut rajouter un input et un minimum de longueur (length) et type de variables (numérique ou caractère)...
s_a_m est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/10/2011, 17h09   #7
Rédacteur
 
Homme Stéphane
Consultant et formateur SAS et Cognos
Inscription : avril 2009
Messages : 1 791
Détails du profil
Informations personnelles :
Nom : Homme Stéphane
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Consultant et formateur SAS et Cognos
Secteur : Conseil

Informations forums :
Inscription : avril 2009
Messages : 1 791
Points : 4 012
Points : 4 012
Si tu es en V9, tu ajoutes l'option GUESSINGROWS.

Code :
1
2
3
4
5
6
7
PROC IMPORT OUT= essai11
DATAFILE= 'S:\AM\04. Projets\2011-06_ktp\0. perso\Texte\Essai11.txt'
DBMS=TAB REPLACE;
GETNAMES=YES;
DATAROW=2;
GUESSINGROWS=10000;
RUN;
si c'est pas 10000 lignes dans ton fichier, tu mets la valeur correspondante. Cette option analyse chaque champ pour déterminer la véritable longueur. Ainsi si tu as 20 lignes de missing au début, cette option se basera sur les 980 autres pour trouver la bonne longueur.

Dis moi si cela t'aide.
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !

Moteur de recherche dans les papiers SAS
datametric est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/10/2011, 18h05   #8
Nouveau Membre du Club
 
Inscription : janvier 2011
Messages : 180
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 180
Points : 34
Points : 34
Grand merci Datameric ça marche c'est exactement ce que je cherchais.Merci à toi aussi SAM pour l'attention accordée à mon problème.
kedmard est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/10/2011, 18h07   #9
Rédacteur
 
Homme Stéphane
Consultant et formateur SAS et Cognos
Inscription : avril 2009
Messages : 1 791
Détails du profil
Informations personnelles :
Nom : Homme Stéphane
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Consultant et formateur SAS et Cognos
Secteur : Conseil

Informations forums :
Inscription : avril 2009
Messages : 1 791
Points : 4 012
Points : 4 012
C'est l'option magique de la V9. On oublie les INFILE
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !

Moteur de recherche dans les papiers SAS
datametric est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h20.


 
 
 
 
Partenaires

Hébergement Web