1
我正在運行完全交互式的線性迴歸(即包括所有變量的所有雙向交互),現在我想輸出變量名稱以及係數估計值。 一個最小的例子如下所示:在Matlab中保存完全交互迴歸的變量名稱
y = randn(100,1); %Dependent variable
X = randn(100,3); %Independent variables
names = {'var1', 'var2', 'var3'};
Xint = x2fx(X, 'interaction'); %Construct interaction terms
res = regstats(y,Xint);
現在,x2fx的documenation()指出,它構造其以下列順序輸出:
常數項
的線性項(該(1,2,...,n)列中的X,列
交互作用項(X,按(1,2),(1,3),..., (1,n),(2,3),...,(n-1,n))
我現在要構建在同一順序的變量名的單元,即,(對於小例子)我想
allVars = {'cons', 'var1', 'var2', 'var3','var1xvar2','var1xvar3','var2xvar3'};
我試圖做到這一點使用ndgrid在這裏:
temp1 = 1:3; % Vector of variable indices
[x, y] = ndgrid(temp1, temp1);
allvarnames = [x(:) y(:)];
但這有所有交互變量兩次(例如一次爲2-1次,一次爲1-2次),順序依然錯誤。我可以沿着這些路線前進,雖然它可能有點混亂,但我想知道是否有人知道這個更簡單的解決方案。
由於提前, 湯姆