我對SAS編程環境非常熟悉。我目前正在嘗試學習編程R.我發現使用SAS宏可以減少編程中重複代碼的數量。特別是,我使用宏變量找到了有用的數據集名稱和變量名稱調整部分。但是,在R中我還沒有找到可以複製這個的東西。SAS中的宏變量R
例如,在SAS I可以寫一個簡單的宏上運行兩個數據集這樣PROC意味着:
%macro means(dataset_suffix = , var1_suffix=);
proc means data = data&dataset_suffix;
var var1&var1_suffix;
run;
%mend means;
%means(dataset_suffix = _suf1, var1_suffix = _suf2);
%means(dataset_suffix = _suf3, var1_suffix = _suf4);
運行代碼執行得到的在下面的代碼宏兩次正在運行
proc means data = data_suf1;
var var_suf2;
run;
proc means data = data_suf3;
var var_suf4;
run;
我已經看過R的用戶定義函數以及使用列表。我知道R中沒有一個過程可以與proc方法直接比較。但是,我的問題的焦點是如何使用宏變量來引用R中具有相似前綴但不同後綴的不同對象。我也考慮過使用粘貼功能。任何與此有關的幫助將不勝感激。
我會看看數據框的'names'屬性 - 如果你做了'names(data)< - paste0(「suffix」,names(data2))''它應該達到你之後。 –
謝謝你的這個想法。我會研究它。 – user1500158