おはようございます、
コードのこの部分をデバッグするのを手伝ってくれる人がいます
コードは現在のデータテーブルのダイアログウィンドウを開くはずです。
ダイアログで選択された数値列の場合、スクリプトは自身の列の平均値で空のセルを代入する必要があります。
しかし、どういうわけかうまくいかないのはなぜか理解してはいけない
dt =現在のデータテーブル()。
cd =列ダイアログ(
Myregcol_x = Collist( "列を選択>>"、MinCol(1))、
Hlist( "")、
;
regcol_x = cd ["Myregcol_x"];
nitems = N個のアイテム(regcol_x);
colname_num = {};
(p = 1、p <= nitems、p ++、
colname_num = regcol_x [p] <<データ型を取得します。
colname_num == "Numeric"の場合
(i = 1、i <= N項目(regcol_x)、i ++、
valuess = Column(regcol_x)<< values(1)を取得します。
valuess [Loc(Is Missing(valuess))] = Mean(valuess);
列(regcol_x)<< setvalues(valuess、cc [i]);
;
;
;
前もって感謝します
ジャンパオロ
2 For Loopsの使用中に論理エラーが発生しました。 スクリプトを一度に1つの列で機能する場所に単純化し、2番目のForループを排除しました。
Names Default To Here( 1 );
dt = Current Data Table();
cd = Column Dialog( Myregcol_x = Collist( " Select columns >>", MinCol( 1 ) ), Hlist( "" ), );
regcol_x = cd["Myregcol_x"];
nitems = N Items( regcol_x );
colname_num = {};
For( p = 1, p <= nitems, p++,
colname_num = regcol_x[p] << Get Data Type;
If( colname_num == "Numeric",
valuess = Column( regcol_x[p] ) << get values;
valuess[Loc( Is Missing( valuess ) )] = Mean( valuess );
Column( regcol_x[p] ) << setvalues( valuess, cc[p] );
);
);