SAS - Operatorzy
Operator w SAS to symbol używany w wyrażeniach matematycznych, logicznych lub porównawczych. Symbole te są wbudowane w język SAS i wiele operatorów można połączyć w jednym wyrażeniu, aby uzyskać ostateczny wynik.
Poniżej znajduje się lista operatorów kategorii SAS.
- Operatory arytmetyczne
- Operatory logiczne
- Operatory porównania
- Operatory minimum / maksimum
- Operator łączenia
Przyjrzymy się każdemu po kolei. Operatory są zawsze używane ze zmiennymi, które są częścią danych analizowanych przez program SAS.
Operatory arytmetyczne
Poniższa tabela opisuje szczegóły operatorów arytmetycznych. Załóżmy, że mamy dwie zmienne danychV1 i V2wartościami 8 i 4 odpowiednio.
Operator | Opis | Przykład |
---|---|---|
+ | Dodanie | V1 + V2 = 12 |
- | Odejmowanie | V1-V2 = 4 |
* | Mnożenie | V1 * V2 = 32 |
/ | Podział | V1 / V2 = 2 |
** | Potęgowanie | V1 ** V2 = 4096 |
Przykład
DATA MYDATA1;
input @1 COL1 4.2 @7 COL2 3.1;
Add_result = COL1+COL2;
Sub_result = COL1-COL2;
Mult_result = COL1*COL2;
Div_result = COL1/COL2;
Expo_result = COL1**COL2;
datalines;
11.21 5.3
3.11 11
;
PROC PRINT DATA = MYDATA1;
RUN;
Po uruchomieniu powyższego kodu otrzymujemy następujące dane wyjściowe.
Operatory logiczne
Poniższa tabela opisuje szczegóły operatorów logicznych. Te operatory oceniają wartość Prawdy wyrażenia. Zatem wynik operatorów logicznych to zawsze 1 lub 0. Załóżmy, że istnieją dwie zmienne danychV1 i V2wartościami 8 i 4 odpowiednio.
Operator | Opis | Przykład |
---|---|---|
& | Operator AND. Jeśli obie wartości danych są prawdziwe, wówczas wynikiem jest 1, w przeciwnym razie jest to 0. | (V1> 2 i V2> 3) daje 0. |
| | Operator OR. Jeśli którakolwiek z wartości danych jest prawdą, wynikiem jest 1, w przeciwnym razie jest to 0. | (V1> 9 i V2> 3) wynosi 1. |
~ | Operator NOT. Wynik operatora NOT w postaci wyrażenia, którego wartością jest FAŁSZ lub brakująca wartość to 1, w przeciwnym razie jest to 0. | NOT (V1> 3) wynosi 1. |
Przykład
DATA MYDATA1;
input @1 COL1 5.2 @7 COL2 4.1;
and_=(COL1 > 10 & COL2 > 5 );
or_ = (COL1 > 12 | COL2 > 15 );
not_ = ~( COL2 > 7 );
datalines;
11.21 5.3
3.11 11.4
;
PROC PRINT DATA = MYDATA1;
RUN;
Po uruchomieniu powyższego kodu otrzymujemy następujące dane wyjściowe.
Operatory porównania
Poniższa tabela opisuje szczegóły operatorów porównania. Te operatory porównują wartości zmiennych, a wynik jest wartością prawdziwą przedstawioną przez 1 dla PRAWDA i 0 dla Fałsz. Załóżmy, że mamy dwie zmienne danychV1 i V2wartościami 8 i 4 odpowiednio.
Operator | Opis | Przykład |
---|---|---|
= | Operator EQUAL. Jeśli obie wartości danych są równe, wynik wynosi 1, w przeciwnym razie jest to 0. | (V1 = 8) daje 1. |
^ = | Operator NOT EQUAL. Jeśli obie wartości danych są nierówne, wynikiem jest 1, w przeciwnym razie 0. | (V1 ^ = V2) daje 1. |
< | MNIEJ NIŻ Operator. | (V2 <V2) daje 1. |
<= | MNIEJ NIŻ LUB RÓWNE Operatorowi. | (V2 <= 4) daje 1. |
> | WIĘKSZY NIŻ Operator. | (V2> V1) daje 1. |
> = | WIĘKSZA NIŻ LUB RÓWNA Operatorowi. | (V2> = V1) daje 0. |
W | Operator IN. Jeśli wartość zmiennej jest równa którejkolwiek z wartości z danej listy wartości, wówczas zwraca 1, w przeciwnym razie zwraca 0. | V1 w (5,7,9,8) daje 1. |
Przykład
DATA MYDATA1;
input @1 COL1 5.2 @7 COL2 4.1;
EQ_ = (COL1 = 11.21);
NEQ_= (COL1 ^= 11.21);
GT_ = (COL2 => 8);
LT_ = (COL2 <= 12);
IN_ = COL2 in( 6.2,5.3,12 );
datalines;
11.21 5.3
3.11 11.4
;
PROC PRINT DATA = MYDATA1;
RUN;
Po uruchomieniu powyższego kodu otrzymujemy następujące dane wyjściowe.
Operatory minimum / maksimum
Poniższa tabela opisuje szczegóły operatorów minimum / maksimum. Te operatory porównują wartości zmiennych w wierszu i zwracana jest minimalna lub maksymalna wartość z listy wartości w wierszach.
Operator | Opis | Przykład |
---|---|---|
MIN | Operator MIN. Zwraca minimalną wartość z listy wartości w wierszu. | MIN (45,2,11,6,15,41) daje 11,6 |
MAX | Operator MAX. Zwraca maksymalną wartość z listy wartości w wierszu. | MAX (45,2,11,6,15,41) daje 45,2 |
Przykład
DATA MYDATA1;
input @1 COL1 5.2 @7 COL2 4.1 @12 COL3 6.3;
min_ = MIN(COL1 , COL2 , COL3);
max_ = MAX( COL1, COl2 , COL3);
datalines;
11.21 5.3 29.012
3.11 11.4 18.512
;
PROC PRINT DATA = MYDATA1;
RUN;
Po uruchomieniu powyższego kodu otrzymujemy następujące dane wyjściowe.
Operator łączenia
Poniższa tabela opisuje szczegóły operatora konkatenacji. Ten operator łączy dwie lub więcej wartości łańcuchowych. Zwracana jest wartość pojedynczego znaku.
Operator | Opis | Przykład |
---|---|---|
|| | Operator konkatenacji. Zwraca konkatenację dwóch lub więcej wartości. | 'Cześć' || ' World ”daje Hello World |
Przykład
DATA MYDATA1;
input COL1 $ COL2 $ COL3 $;
concat_ = (COL1 || COL2 || COL3);
datalines;
Tutorial s point
simple easy learning
;
PROC PRINT DATA = MYDATA1;
RUN;
Po uruchomieniu powyższego kodu otrzymujemy następujące dane wyjściowe.
Pierwszeństwo operatorów
Pierwszeństwo operatorów wskazuje kolejność oceny wielu operatorów obecnych w złożonym wyrażeniu. W poniższej tabeli opisano kolejność pierwszeństwa w grupie operatorów.
Grupa | Zamówienie | Symbolika |
---|---|---|
Grupa I | Od prawej do lewej | ** + - NIE MIN MAX |
Grupa II | Z lewej na prawą | * / |
Grupa III | Z lewej na prawą | + - |
Grupa IV | Z lewej na prawą | || |
Grupa V | Z lewej na prawą | <<= => => |