早上好,
從幾週前的討論開始 (這裡) ,我已經在已解決的腳本中添加了一個簡單的GUI,以便選擇要分析的列以及此類列中停滯或空元素的百分比。
我想創建一個新列來檢查我的表的哪些列幾乎是空的或停滯,但是
我有一個問題,我無法將已處理的列鎖定到主表,在我的腳本中出了問題,
你能幫助我嗎
提前致謝
這裡的代碼:
名稱默認為此處 ( 1 );
清除全局 ();
//代碼在所有打開的表中進行選擇,其中一個將被選擇用於分析
OpenDT = 名單 ();
對於 (i = 1 ,我<= N表 (),i ++,
插入 (OpenDT,數據表 ( 一世 ) )
);
dlgDT = 對話 ( “選擇數據表進行分析” ,VList(selectDT = 列錶框 (OpenDT)),HList(Button( “好” ),按鈕( “取消” )));
節目 (dlgDT);
如果 (dlgDT [ “按鈕” ] == 1 ,
從......中去除 (dlgDT, N項 (dlgDT));
評估列表 (dlgDT);
);
當前數據表 (selectDT [ 1 ]);
// ----------------------------------------- GUI ------ ----------------------------------- //
cd = 列對話框 (
標題( “欄目篩選” )
List = ColList( “選擇列>>” ,MinCol( 1 )),
HList( “空列的百分比>(0-100)” ,
“停滯列的百分比<(0-100)” ,mypercent = EditNumber( 90 )),
);
//變量聲明
百分比= cd [ “mypercent” ]。
mylist = cd [ “清單” ]。
dt = selectDT [ 1 ]。
delcols = {};
numRows = NROWS (DT);
對於 (I = 1 ;馬克西= NITEMS (mylist),i <= maxi,i ++,
如果 ( NROWS ( LOC ( aslist ( 柱 (DT,MYLIST [I])<< getasmatrix ) 模式 ( 柱 (DT,MYLIST [I])<< getasmatrix )))> numRows *%/ 100 ,
插入 (delcols,i);
,
如果 ( Col N Missing ( 柱 (dt,mylist [i]))> numRows * percent / 100 ,
插入 (delcols,i);
);
);
);
nitems = N項 (delcols);
colname = {};
colnamelist = {};
對於 (p = 1 ,p <= nitems,p ++,
colname = 柱 (delcols [p])<< 得到名字 ;
插入 (colnamelist,colname(p));
);
subDt1 = dt << 子集 (列(colnamelist),輸出表名稱( “檢查刪除的列” ));
對不起,我沒看過你的代碼的細節,也沒看過它想做什麼。但也許它應該是:
Insert Into( delcols, myList[i] )
而不是:
Insert Into( delcols, i )