JSLでopen()を使用してテキストファイルをインポートするときにヘッダーとフッターを除外するにはどうすればよいですか?データの先頭にいくつかのヘッダー行があり、データの最後にフッターがあるデータがあります。
ヘッダーとフッターの両方のテキストは識別子で始まります! 。
(ヘッダー、フッター、およびその間のデータの行数は異なります)
任意のデータを使用した例(.txtファイルとして入手可能)
!ヘッダーの最初の行
!ヘッダーの2行目
パラメータLSLUSL単位
電圧0.10.5 V
静電容量0.30.7 pF
抵抗0.59オーム
! フッター2行目
! フッター3行目
! フッター3行目
open()を使用して、テキスト形式でデータをインポートするときにヘッダーとフッターのデータを除外できますか?
open()を使用して、ヘッダーとフッターのテキストを保持したままデータをインポートできます(たとえばテーブルに) dt )。
(新しいテーブルに)抽出する方法も知りたいdt_new )識別子で始まるヘッダーとフッターを除くデータ、たとえば!。
最後に、ヘッダーとフッターのデータをに保存しますdt別のテーブルで、 dt_hf。 これを行う方法?
ありがとう。
データ表スクリプティングRe:JSLでopen()を使用してテキストファイルをインポートするときにヘッダーとフッターを除外するにはどうすればよいですか?一方通行:
filename = Save Text File(
"$temp/deleteme.txt",
"\[! header first line
! header second line
Parameter LSL USL Units
voltage 0.1 0.5 V
Capacitance 0.3 0.7 pF
Resistance 0.5 9 Ohms
! Footer second line
! Footer third line
! Footer third line]\"
);
lines = Words( Load Text File( filename ), "\!n\!r" );
metadata = {};
data = {};
For( i = 1, i <= N Items( lines ), i += 1,
line = lines[i];
If( Starts With( line, "!" ),
Insert Into( metadata, line ),
Insert Into( data, line )
);
);
datafilename = Save Text File( "$temp\data.txt", Concat Items( data, "\!n" ) );
metafilename = Save Text File( "$temp\metadata.txt", Concat Items( metadata, "\!n" ) );
dtData = Open( datafilename, Import Settings( End Of Field( Tab, Spaces, Space ) ) );
dtMetadata = Open( metafilename, Import Settings( Labels( 0 ) ) );
データから分離されたメタデータ
Re:JSLでopen()を使用してテキストファイルをインポートするときにヘッダーとフッターを除外するにはどうすればよいですか?ありがとう@Craige_Hales 。
データがテキストファイルではなくデータテーブルにある場合、どのような変更が必要ですか?
(私はテキストファイルをロードし、それを言うdt )。
次に、ヘッダーとフッターをから分離する必要がありますdt。
また、ヘッダーとフッターのエントリ間の空の行を処理する方法(例:間の空のスペース)フッターセカンドラインとフッター3行目それらを含めないでくださいデータ?
Re:JSLでopen()を使用してテキストファイルをインポートするときにヘッダーとフッターを除外するにはどうすればよいですか?これはあなたのデータテーブルがどのように見えるかですか?そうでない場合は、サンプルデータテーブルを提供できますか?

Re:JSLでopen()を使用してテキストファイルをインポートするときにヘッダーとフッターを除外するにはどうすればよいですか?@txnelson 。 以下はその様子です。 次のことをしたい
1.ヘッダーとフッターのテキストを1つのリストに分けます。
2.空行を除くヘッダーとフットの間のデータをデータテーブルに分離します。
3.データテーブル内の空のエントリの数をカウントします(ロードされているテキストファイルに応じて変化します)

ありがとう。
Re:JSLでopen()を使用してテキストファイルをインポートするときにヘッダーとフッターを除外するにはどうすればよいですか?これが私があなたが必要だと思うものの簡単な例です。
Names Default To Here( 1 );
dt = Current Data Table();
headFootList = {};
col1Name = Column( 1 ) << get name;
Eval(
Parse(
Eval Insert(
"For Each Row( If( Contains( :^col1Name^, \!"!\!" ) == 1, Insert Into( headFootList, :^col1Name^ ) ) )"
)
)
);
Eval(
Parse(
Eval Insert(
"emptyCount = N Rows( dt << get rows where( :^col1Name^ == \!"\!" ) )"
)
)
);
Eval(
Parse(
Eval Insert(
"dt << select where( contains(:^col1Name^,\!"!\!")==1 | :^col1Name^ == \!"\!")"
)
)
);
Try( dt << delete rows );
dtHeadFoot = New Table( "Headers and Footers",
New Column( "Headers and Footers", character, set values( headFootList ) )
);
New Window( "Count of Empty Rows",
<<MODAL></MODAL>