News Artikel Foren Join Projekte List Links Random Über Redscope Previous Next Startseite werte in sas ersetzen 17 July, 2012 - 14:35 — glogow Hallo , bin noch Anfänger und habe das Problem das ich Werte (Beobachtungen) ersetzen will, wenn bestimmte Kreterien erfüllt sind. Z.B. Code 182 soll durch Code 181 ersetzt werden sobald noch andere Codes vorhanden sind, ansonsten soll der Code so bleiben. Log in or register to post comments Kommentare Werte ersetzen 19 July, 2012 - 15:34 — JanHeuer Hallo glogow, die Beschreibung war zwar etwas ungenau, aber vielleicht hilt dir das ja weiter: data neu_code; set alt_code; if (anderer_code = "irgendwas") and (Code=182) then do; code = 181; end; run; Schöne Grüße Jan Log in or register to post comments Hallo, vielen Dank für die Hallo, vielen Dank für die schnelle Hilfe. Hat leider nicht so geklappt. Hier ein Beispiel: Nr code wert 001 104 10 001 110 15 001 182 2 dann soll der Code auf 181 umgesetzt werden. Nr code wert 002 182 5 hier soll der Code bestehen bleiben. 24 July, 2012 - 11:13 — glogow Log in or register to post comments Count distinct 3 September, 2012 - 06:46 — JanHeuer Hallo Glogow, ich weiß nicht, ob es noch aktuell ist. Data test; input Nr code wert; cards; 001 104 10 001 110 15 001 182 2 002 182 5 run; Proc sql; create table ersetz as select Nr , case when code = 182 and count(distinct code ) > 1 then 181 else code end as newCode , code , Wert from Test group by Nr order by Nr , newcode ; quit; Schöne Grüße Jan Log in or register to post comments Vorschlag 19 July, 2012 - 19:55 — HansKneilmann Hallo Sabine, willst Du Werte in einzelnen Feldern ersetzen oder ganze Daten-Sätze? Wert in einzelnen Feldern ersetzen geht so: data test_daten; Code=180; Wert=1; output; Code=181; Wert=2; output; Code=182; Wert=3; output; run; data neu; set test_daten; if code = 182 then do; code=181; end; run; Oder habe ich die Frage falsch verstanden? Gruß Hans Kneilmann P.S.: Mein Beitrag ist tagsüber so nebenher entstanden und bevor ich ihn speicherte habe ich nicht nachgeschaut, ob nicht schon jemand geantwortet hat. Deshalb ist er doppelt ... Log in or register to post comments Werte in SAS ersetzen 17 September, 2012 - 16:03 — pitlorenz Hallo Sabine, hier noch ein kleiner Lösungsvorschlag: Annahme, dass alle Codes 182 sind ( globale Variable c182=y ) Schritt1 : Sobald ein Code anders ist, c182 (CALL SYMPUT) auf n setzten Schritt2 : Tauschen der Codes 182 , wenn c182 = n ist. Viele Grüße Peter data test_daten; Code=181; Wert=1; output; Code=183; Wert=2; output; Code=182; Wert=3; output; run; %LET c182=y; data neu; set test_daten; IF Code NOT = 182 THEN DO; CALL SYMPUT ('c182','n'); STOP; END; run; data neu; set test_daten; IF Code = 182 AND "&c182" = 'n' THEN Code = 181; run; Log in or register to post comments