テキストファイルを開く設定をスクリプトに保存する方法こんにちは、
問題:
多数の .txt ファイルがあります。 行7から無限大まで、列4のデータのみを気にします。 多数の .txt ファイルから列 4 のすべてのデータを抽出し、それらを 1 つのテーブルに連結したいと考えています。 これを行う最善の方法は何ですか? 理想的には、これを実行するスクリプトを作成したいと思います。
同じように、File - open メソッドを使用してデータ付きの .txt ファイルを (プレビューを使用して) 開くと、列 4 のデータを適切にフォーマットできますが、これらの 'open '設定。 同じ設定で他の .txt ファイルを開くことができるように、スクリプトに保存したいと思います。
どうすればいいですか?
サンプルの .txt ファイルの 1 つを参照用に添付しました。
助けてくれてありがとう!
データ表スクリプティングRe: テキストファイルを開く設定をスクリプトに保存する方法両方の提案をありがとう! スクリプト作成オプションは、私がやりたいと思っていたものに少し似ていて、魅力的に機能したと思います! 複数のファイルをインポートする練習も必要です。
Re: テキストファイルを開く設定をスクリプトに保存する方法Open Multiple files を表示してくれた Jim に感謝します。 とてもパワフルそうです。 奇妙なことに、私はそれを使ったことがありません。おそらく、このようなタスクをスクリプト化するという古い習慣のせいでしょう。
すべてのファイルの行数がまったく同じである場合、以下のスクリプトは同じ最終テーブルを提供するはずです。
Names Default To Here( 1 );
path = "path to directory of text files";
files = Files In Directory( path );
open_expr = Expr(
dt = Open(
path || Expr( files[i] ),
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Spaces, CSV( 0 ) ),
Data Starts( 7 ),
Lines To Read( "All" )
),
private
)
);
M = []; //Matrix to hold data from multiple files
L = {}; // List of imported file names
For( i = 1, i <= N Items( files ), i++,
If( Ends With( files[i], ".txt" ),
Eval( Eval Expr( open_expr ) );
Insert Into( L, files[i] );
M ||= dt[0, 5]; // Add column 4 (5 becaue of fronting spaces in files)
Close( dt, no save );
)
);
// Make into table
dt = As Table( M, <<COLUMN names=""></COLUMN>
Re: テキストファイルを開く設定をスクリプトに保存する方法例として、サンプル ファイルのコピーを 4 つ作成し、それらをすべてディスカッション グループ フォルダーの下のフォルダーに配置しました。
Documents\Discussion Group\textfile
私はその後に行きました
ファイル=>複数のファイルをインポート

「ファイル名列を追加」のチェックボックスを選択しました
次に、「設定」をクリックしました

「ヘッダーあり」のチェックを外しました
「最初のデータ行」を 7 に変更しました
フィールドの終わりボックスの「カンマ」をオフにし、「スペース」をオンにしました
OKをクリックしました
インポートをクリックしました
Col1 から Col6 列と FileName 列で開かれたデータ テーブル

必要な列は列 Col5 とファイル名だけなので、他の列はすべて削除します

あとは、4 つの入力ファイルからのデータを列に分離するだけです。
に行く
テーブル=>分割

[分割] 列として [ファイル名] を選択します
[列の分割] 列として列 5 を選択します。
[OK] をクリックします。
新しいテーブルには、入力ファイルごとに 1 つの列があります。

これは、必要なテーブルの最終的な形式である必要があります。列の名前を自由に変更できます。
Re: テキストファイルを開く設定をスクリプトに保存する方法申し訳ありませんが、私の目標を十分に明確に説明していませんでした。 提案は私が必要とするものを私に与えません。 また、連結コマンドではなく結合コマンドを使用する必要があることにも気付きました。
39 個の .txt ファイルがあります。 各 .txt ファイルの 4 列目のデータのみが必要です。 そのデータを抽出し、39 個の個別の列 (39 個の .txt ファイルすべての 4 番目の列ごとに 1 つ) を持つように新しいテーブルに追加したいと考えています。
Re: テキストファイルを開く設定をスクリプトに保存する方法取るべきルートは、Import Multiple Files を使用することだと思います
ファイル=>複数のファイルをインポート
フォルダー内のすべてのファイルを読み取り、それらを連結します (必要な場合)。あとは、不要な列を削除するだけです。
また、フォルダー全体、またはテスト ケースのいくつかのファイルを実行した後、データ テーブルの左上パネルの [ソース] エントリに移動し、それを右クリックして [編集] を選択すると、すべての JSL を取得できます。スクリプトから実行する必要があります。