BookmarkSubscribeRSS Feed
☑ This topic is solved. Need further help from the community? Please sign in and ask a new question.
Vivek44
Calcite | Level 5

Bonjour  à tous , 

je suis nouvelle. J'aimerai savoir comment transformer ma variable statut "pris_en_charge" sur un dossier  en plusieurs colonnes (statut1, statut2,....) afin d'observer toutes les personnes qui prennent en charge le dossier. 

Merci de m'aider 

 

1 ACCEPTED SOLUTION

Accepted Solutions
A_Kh
Lapis Lazuli | Level 10

Salut @Vivek44 , 

 

Ca serait mieux de presenter la capture d'ecran de ta table avec la structure expectee.

Si le but est just transposer la colonne  'statut' en plusieures colonnes , utilise PROC TRANSPOSE comme en exemple ci-dessous:

proc sort data=have;
	by nom matricule iddos statut;
run;

proc transpose data=have prefix=statut out=want (drop=_name_);
	by nom matricule;
	var statut;
	id iddos;
run; 
proc print; run; 

Ca te donne:

Capture.PNG 

 

 

View solution in original post

7 REPLIES 7
PaigeMiller
Diamond | Level 26

Please show us a portion of the data, and for this portion of the data, show us the desired output.

--
Paige Miller
Vivek44
Calcite | Level 5
Dans ma table j'ai
plusieurs colonnes :
iddos , statut , nom, matricule ...
2000 pris_en_charge Berlin 000777
2000 pris_en_charge Martin 000880 2000 pris_en_charge Louise 000666
5000 pris_en_charge Berlin 000777
5000 pris_en_charge Marc 000555 ....
le soucis un dossier peut avoir le statut "pris en charge" plusieurs fois sur des jours différents donc je ne peux pas utiliser la procédure if first/last iddos .
Je veux donc diviser la colonne statut autant de fois le dosiier est pris en charge
Merci
PaigeMiller
Diamond | Level 26

You did not show us the desired output from this data. Please show us. Also, we need a good description of the logic you are using to create this desired output.

--
Paige Miller
ballardw
Super User

Does this code represent your data set example:

data have;
   input iddos $ statut :$15. nom $ matricule $;
datalines;
2000 pris_en_charge Berlin 000777
2000 pris_en_charge Martin 000880 
2000 pris_en_charge Louise 000666
5000 pris_en_charge Berlin 000777
5000 pris_en_charge Marc 000555 
;
A_Kh
Lapis Lazuli | Level 10

Salut @Vivek44 , 

 

Ca serait mieux de presenter la capture d'ecran de ta table avec la structure expectee.

Si le but est just transposer la colonne  'statut' en plusieures colonnes , utilise PROC TRANSPOSE comme en exemple ci-dessous:

proc sort data=have;
	by nom matricule iddos statut;
run;

proc transpose data=have prefix=statut out=want (drop=_name_);
	by nom matricule;
	var statut;
	id iddos;
run; 
proc print; run; 

Ca te donne:

Capture.PNG 

 

 

Vivek44
Calcite | Level 5

Merci, je vais essayer sinon on m'avait parlé d'une boucle 

Vivek44
Calcite | Level 5

MERCIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII

 

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 7 replies
  • 783 views
  • 1 like
  • 4 in conversation