開いている複数の .jmp データ テーブルを .csv ファイルとして保存するにはどうすればよいですか?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />テーブル サブセットの結果として、.csv ファイルとして保存する必要がある複数の .jmp データ テーブルがあります。 開いているすべてのテーブルを保存するスクリプトを試しましたが、.jmp ファイルとして保存する場合にのみ機能します。
openDTs=List ();For (i=1, i<=N Table (), i++, Insert Into (openDTs, Data Table (i)););
For(i=1, i<=N Items(openDTs),i++,openDTS <<保存(););
サブセット操作により、多数のテーブルが開かれることになるため、それほど多くのテーブルが開かれることを避け、サブセット操作の後に保存手順を組み込むようにした方が良いかもしれません。 私はスクリプト作成に非常に慣れていないので、アイデアをいただければ幸いです。
Re: 開いている複数の .jmp データ テーブルを .csv ファイルとして保存するにはどうすればよいですか?どうもありがとうございます。 そのスクリプトは私が探していたものです!
Re: 開いている複数の .jmp データ テーブルを .csv ファイルとして保存するにはどうすればよいですか?きちんとした。 PMroz のスクリプトは、各データ テーブルからすべてのデータを無差別にキャプチャする場合に完全に機能します。 私が提供したスクリプトでは、書き出す列を選択できるため、もう少し制御できます。必要に応じて、特定の行や特定のセルを選択するように調整することもできます。 そのレベルの制御が必要な場合は、複数のデータ テーブルを選択するためのコードをスクリプトから PMroz のスクリプトに挿入できるはずです。
Re: 開いている複数の .jmp データ テーブルを .csv ファイルとして保存するにはどうすればよいですか?dt1 =開ける( 「$sample_data\Big Class.jmp」 ) ;
dt2 =開ける( 「$sample_data\バンドデータ.jmp」 ) ;
dt3 =開ける( 「$sample_data\Auto Raw Data.jmp」 ) ;
dt4 =開ける( 「$sample_data\Fitness.jmp」 ) ;
openDT = {} ;
ために(私= 1 、私<= Nテーブル() 、私++、
に挿入( openDT 、データ表(私) )
) ;
ファイルディレクトリ= 「c:\temp\」 ;
ために(私= 1 、私<= N 個のアイテム( openDT ) 、私++、
一名= openDTS [私】 <<名前を取得する;
ファイルパス=ファイルディレクトリ||一名|| 「.csv」 ;
openDTS [私】 <<保存(ファイルパス) ;
) ;
Re: 開いている複数の .jmp データ テーブルを .csv ファイルとして保存するにはどうすればよいですか?スクリプトをありがとうございました。 私はそれを試し、.jmp ファイルの 1 つで作業しました。 現在の問題は、元の対応する jmp テーブルと同じ名前の .csv ファイルとして保存する必要がある 400 以上の jmp テーブルがあることです。 これを行う方法がわかりません。
Re: 開いている複数の .jmp データ テーブルを .csv ファイルとして保存するにはどうすればよいですか?.csv 拡張子を持つパスを指定すると、csv ファイルとして保存されます。
dt =新しいテーブル( 「CSVの例」 、行の追加( 3 ) 、
新しい列( 「コラム1」 、数値、継続的、フォーマット( "一番" 、 12 ) 、設定値( [ 1 、 2 、 3 】 ) ) 、
新しい列( 「コラム2」 、キャラクター、公称、設定値( { 「あ」 、 「b」 、 「c」 } ) )
) ;
FP = 「c:\temp\csv_example.csv」 ;
dt <<保存( FP ) ;
Re: 開いている複数の .jmp データ テーブルを .csv ファイルとして保存するにはどうすればよいですか?理想的には、これは単純な 1 行の修正であるはずですが、調べてみるとそうではないようです。 保存と名前を付けて保存特に JMP データ テーブルを保存します。パス/ファイル名以外には、ファイル タイプなど、これらの関数に追加のパラメータはありません。 他にもファイル出力機能がありますが、テキストファイルの保存ですが、特定の文字列をテキスト ファイルに出力するだけです。 幸いなことに、私にはかなりのプログラミング経験があるので、ほとんどのプログラミング言語がこの方法で CSV ファイルを作成するため、このタスクを実行する方法は、少し考えてみるとかなり簡単でした。
以下は、必要なことを実現するスクリプトです。これをデータテーブルに適応させるだけで済みます。データテーブルで特定の列を指定する必要があります。 このスクリプトが行うことは、まずデータ テーブル内の行数を決定することです。 次に、For ループを使用して、データ テーブルの各行の特定の列からデータをキャプチャし、テキスト ファイルに書き込みます。 最初の行では、新しいファイルが作成されるか、既存のファイルが上書きされます。 残りのすべての行について、データは既存のファイルに追加されます。 また、連続した 1 行のデータだけのファイルが作成されないように、ファイルの最後の行を除くすべての行に改行が追加されます。
この方法でテキスト ファイルを作成する利点の 1 つは、特定のデータのみが必要な場合にエクスポートする列を選択できることです。 すべてのデータが必要で、複数の列がある場合、このプロセスは明らかに面倒ですが、前に述べたように、この手法はほとんどのプログラミング言語で一般的です。
デフォルトの名前はここにあります( 1 ) ;
dt =現在のデータテーブル() ;
最終行= N 行() ;
ために(私= 1 、私<=最終行、私++、
//列を取得する
位置= :位置[私】 ;
日= :日[私】 ;
時間= :時間[私】 ;
カウント= :カウント[私】 ;
平均= :平均[私】 ;
最大= :マックス[私】 ;
//カンマ区切りの行を作成
csv行=連結アイテム(
{位置、シャア(日) 、シャア(時間) 、シャア(カウント) 、シャア(平均) 、シャア(最大)} 、
「、」
) ;
//行をテキストファイルに保存
もしも(私== 1 、
テキストファイルの保存( 「$DESKTOP/テストファイル.csv」 、 csv行、モード( "交換" )) 、
テキストファイルの保存( 「$DESKTOP/テストファイル.csv」 、 csv行、モード( 「追加」 ))
) ;
//最後の行を除くすべての行の改行をエクスポートします
もしも(私!=最終行、テキストファイルの保存( 「$DESKTOP/テストファイル.csv」 、 「\!n」 、モード( 「追加」 ))) ;
) ;