import:たくさんの余分なcolがあります。ユーザーが欲しいものを選択しますか?おはようございます、
だから私はjslに慣れていないし、これを理解しようとしています。 私がサーバーから取得したデータセットには、たくさんの余分な列があります。多くの場合、colは空白です。 私のスクリプトの大部分は、ユーザーが選択したダイアログボックスで開始して、選択した列を選択/追加/削除し、場合によってはそれらを好みの順序に並べ替えることができますか?何か手助け?
コルのことを言うとしましょう:
| Col# | ColName | |
| 1 | date_export | |
| 2 | 製品の種類 | |
| 3 | part_Number | |
| 4 | レシピ | |
| 5 | date_run | |
| 6 | measurement_type | |
| 7 | 値 | |
| 8 | ツール | |
| 9 | ターゲット | |
確かに、これらのcolのいくつかは必要ではなく、それらはすべて人間の視点から見れば間違いなく故障しています。 理想的には、スクリプトに次のようなものを自動選択して注文するようにします。
Col#:2、8、4、5、6、7、9
そして、ユーザーが望むならば再フォーマットされた出力に追加するためにユーザーが他の列を選択することを可能にするユーザーダイアログボックスを持っているかもしれません。
どう思いますか?
再:インポート:余分なcolのたくさんの。ユーザーが欲しいものを選択しますか?私はあなたの質問を理解したとします。
// Open Sample Data Table
dt = Open( "$SAMPLE_DATA\Air Traffic.jmp" );
// Define list of columns to delete
DelList = {"Carrier Code","Flight Number"};
// Delete Columns
dt << Delete Columns(DelList); 再:インポート:余分なcolのたくさんの。ユーザーが欲しいものを選択しますか?驚くばかり!列名のあらかじめ決められたリストはどうでしょうか。私のデータテーブルのように数十あるいは余分なカラムが付属しています(しばしば空ではありません)。
colnameを選択(crap1、crap2、crap3 ...)
選択した列を削除
その後、トリミングした残りの部分をユーザーが選択できるようにしますか?
再:インポート:余分なcolのたくさんの。ユーザーが欲しいものを選択しますか?これは、データを読み込むときに空の列を削除するテーブルスクリプトを作成するために使用するコードの一部です。
// add a table script that will remove empty columns
dt << Set Property( "Remove Empty Columns",
dt = Current Data Table();
lstToDelete = {};
For (i=1,i<=NCols(dt),i++,
col = Column(dt,i);
If (Col Number(col)==0,
InsertInto(lstToDelete,i)
)
);
If (NItems(lstToDelete)>0,
dt << Delete Columns(lstToDelete)
);
);再:インポート:余分なcolのたくさんの。ユーザーが欲しいものを選択しますか?私はこれがとても好きです。希望のcolを選択し、それを反転して不要なcolを削除します。
ユーザー選択を削減するために事前に指定されたcolを一括して '削除'できるプレステップを実行するためのアドバイスはありますか?
残念ながら、私のデータファイルには、不要なことに数十個の不要な列が含まれています。
たぶん私はすべてのdt = open()の始めに書いて、知られていた '不要なcols'を削除することができる何か?
再:インポート:余分なcolのたくさんの。ユーザーが欲しいものを選択しますか?dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
// Get Column Names
ColNames = dt << Get Column Names("String");
// Open a window for user selection
NW1 = New Window("User Selection",
<< Modal,
V List Box(
Lineup Box(
Lb1 = List Box(ColNames);
)
),
H List Box(
Button Box("OK",
// Unload User Inputs
Rb1Val = Lb1 << Get Selected();
)
)
);
// Select Columns
for(i = 1, i <= N Items(ColNames), i ++,
If(Contains(Rb1Val,ColNames[i]),
Col = Column(dt,i); ;
Col << Set Selected(1);
);
);
// Delete Unwanted Columns
dt << Invert Column Selection ;
dt << Delete Columns ;再:インポート:余分なcolのたくさんの。ユーザーが欲しいものを選択しますか?うまくいけば、外部ファイル形式の性質は安定しています。インポートのためにOpen()関数にこの引数を使用してみてください。
Select Columns( "col", ... )
開いたときにデータ参照を変数(dtなど)に格納したと仮定すると、次のパターンを使用して列を繰り返し並べ替えることができます。
dt << Go to Column( col ref ) // select column to move
<< Move Selected Columns( ... ) // move column to new location
<< Clear Column Selection; //
この返事があなたのやり方で動くことを願っています。
再:インポート:余分なcolのたくさんの。ユーザーが欲しいものを選択しますか?マーク、
いい質問ですね。 フロントエンドでクエリを実行するだけでいいのですが、私の会社のDBはロックされています。 私たちは要求を入れなければなりません、そして私たちは(35列のような)ミスマッチな順序でこれらすべての不必要な列と貧弱な名前のヘッダを持っている平らなExcel .csvファイルを取り出します。 私は読み取り専用アクセスを取得しようとしていますが、それは別の問題です。
再:インポート:余分なcolのたくさんの。ユーザーが欲しいものを選択しますか?ソースファイルはフラットかリレーショナルかソースファイルの種類は何ですか?どのようなファイルをインポートしていますか?ファイル全体をインポートする必要がありますか?
結果をデータベースに問い合わせることができますか?もしそうなら、あなたはあなたがあなたが欲しいものを与えるためにクエリを構築することができます。