|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Charles Mercier Inscription : janvier 2010 Messages : 18 ![]() |
Bonjour,
J'ai un fichier xls avec une variable caractère que j'ai importé sous SAS. SAS me dit que tout va bien, mais quand je regarde la table, je vois que SAS n'a importé que les 1024 premiers caractères de chaque cellule (ce sont des textes un peu longs parfois) Est-ce une limite maximum ou peut on la dépasser ? Et si tel est le cas, comment le faire ? Le fait-on dans une proc import ? (j'ai la version SAS 9.2) |
|
|
00
|
|
|
#2 |
![]() ![]() Samir SELMANEConsultant en Business Intelligence Inscription : février 2011 Messages : 1 006 ![]() |
le maximum est : 32767 ,
après sa depend de ce que t'as mis dans ton proc import ou la : data ;infile; |
|
|
00
|
|
|
#3 |
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Dans la proc IMPORT, il faut ajouter l'instruction
pour importer jusqu'à 20 000 caractères par valeur. Comme l'indique SAM, le maximum est de 32 767. La syntaxe est la même que si tu utilises des options comme SHEET, GETNAMES ou MIXED. La doc ici. |
|
|
10
|
|
|
#4 | ||
|
Invité de passage
![]() Charles Mercier Inscription : janvier 2010 Messages : 18 ![]() |
Bonjour Olivier et merci beaucoup pour ton aide !!
![]() Du coup, j'ai fait : Code :
|
||
|
|
00
|
|
|
#5 | ||||
|
Membre expérimenté
![]() Inscription : avril 2009 Messages : 537 ![]() |
Tu es sur que cela ne marche pas?
J'ai bien testé le code et cela fonctionne : Code :
Code :
|
||||
|
|
00
|
|
|
#6 | ||
|
Invité de passage
![]() Charles Mercier Inscription : janvier 2010 Messages : 18 ![]() |
Merci beaucoup pour ta réponse ! J'ai fait :
Code :
et ça me donne des nombre toujours inférieures à 255, comme si ça coupait à 255 caractères ! |
||
|
|
00
|
|
|
#7 |
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Juste pour savoir : tu as des valeurs longues dès le début de ton fichier texte ?
Visiblement (cf. la page de doc que j'avais indiquée en lien), il peut y avoir des interférences avec la clé de registre TypeGuessRows qui contrôle le nombre de lignes du classeur à importer utilisées pour définir les caractéristiques des variables dans SAS. |
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Charles Mercier Inscription : janvier 2010 Messages : 18 ![]() |
Effectivement Olivier, il faut "attendre" la 29ème observation avant d'avoir un texte avec plus de 255 caractères. Dois je mettre une première observation bidon avec plus de 255 caractères (style "aaaaaaaaaaaaaaaaaaaaaaaaaa") ?
|
|
|
00
|
|
|
#9 |
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Si tu as le droit de modifier ta base de registre, il serait plus judicieux de mettre la clé TypeGuessRows à 0. Ça prendrait en compte toutes les lignes et il y aurait moins de mystères.
Mais sinon, effectivement, l'inclusion en 1e ligne d'une valeur bien bavarde serait une solution. |
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Charles Mercier Inscription : janvier 2010 Messages : 18 ![]() |
Du coup je n'ai pas touché au registre, parce que ça me semblait trop dangereux, en revanche j'ai copié collé ma variable la plus bavarde en première observation et c'est bon il prend tout, nickel !!!
Merci à tous pour votre aide ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com