Jak zmienić nazwy zmiennych w sas-ie (z przykładami)
Możesz użyć funkcji zmiany nazwy , aby zmienić nazwę jednej lub większej liczby zmiennych w zbiorze danych SAS-owym.
Ta funkcja wykorzystuje następującą podstawową składnię:
data new_data; set original_data ( rename =(old_name=new_name)); run ;
Poniższe przykłady pokazują, jak w praktyce wykorzystać tę funkcję z następującym zbiorem danych:
/*create dataset*/
data original_data;
input xyz;
datalines ;
1 4 76
2 3 49
2 3 85
4 5 88
2 2 90
;
run ;
/*view dataset*/
proc print data = original_data;
Przykład 1: Zmień nazwę zmiennej
Poniższy kod pokazuje, jak zmienić nazwę tylko zmiennej x w zbiorze danych:
/*rename one variable*/
data new_data;
set original_data ( rename =(x=new_x));
run ;
/*view new dataset*/
proc print data = new_data;
Zauważ, że nazwa x została zmieniona na new_x , ale wszystkie pozostałe nazwy zmiennych pozostały takie same.
Przykład 2: Zmień nazwę wielu zmiennych
Poniższy kod pokazuje, jak zmienić nazwy zmiennych x i y w zestawie danych.
Pamiętaj, że nie musisz wstawiać przecinków pomiędzy nazwami nowych zmiennych.
/*rename multiple variables*/
data new_data;
set original_data ( rename =(x=new_x y=new_y));
run ;
/*view new dataset*/
proc print data=new_data;
Przykład 3: Dodaj przedrostek do wszystkich zmiennych
Poniższy kod pokazuje, jak dodać przedrostek _NEW do wszystkich zmiennych w zbiorze danych:
/*define prefix to append to each variable*/
proc sql noprint ;
select cats(name, '=', '_NEW', name)
into :list
separated by ' '
from dictionary.columns
where libname = 'WORK' and memname = 'ORIGINAL_DATA';
quit ;
/*add prefix to each variable in dataset*/
proc datasets library = work;
modify original_data;
rename &list;
quit ;
/*view updated dataset*/
proc print data = original_data;
Przykład 4: Dodaj przyrostek do wszystkich zmiennych
Poniższy kod pokazuje, jak dodać przyrostek _NEW do wszystkich zmiennych w zbiorze danych:
/*define suffix to append to each variable*/
proc sql noprint ;
select cats(name, '=', name, '_NEW')
into :list
separated by ' '
from dictionary.columns
where libname = 'WORK' and memname = 'ORIGINAL_DATA';
quit ;
/*add suffix to each variable in dataset*/
proc datasets library = work;
modify original_data;
rename &list;
quit ;
/*view updated dataset*/
proc print data = original_data;
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w SAS-ie:
Jak zastąpić brakujące wartości zerem w SAS-ie
Jak usunąć duplikaty w SAS-ie
Jak normalizować dane w SAS-ie