クリーンアップが必要な大量の csv ファイルがあります。 これらのファイルはすべて同じ形式であるため、作業が少し簡単になります。 私の最初の csv ファイルの形式は次のとおりです。
| アイテムレシピ:(001) 48pt | | | | | |
| ステージレシピ:48pt | | | | | |
| バッチ ID: Prod1 | | | | | |
| アイテムID: 42 | | | | | |
| 日時: 2017 年 5 月 1 日 16:28:56 | | | | | |
| | | | | | |
| 点 | 計測 | 利得 | Gフィット | バツ | よ |
| 1 | 12.3 | 99.7 | 0.99 | 1 | 1 |
| 2 | 12.2 | 99.9 | 0.98 | 2 | 2 |
| 3 | 12.1 | 99.8 | 0.98 | 3 | 3 |
最初の 6 行はクリーンアップする必要があります。 最初の 6 行を新しいテーブルに入れて転置することを考えています。 転置後、テーブルを他のセクションと結合します。 私の理想的な JMP テーブルは次のとおりです。
| アイテムのレシピ: | ステージレシピ: | バッチ ID: | アイテムID: | 日付時刻: | 点 | 計測 | 利得 | Gフィット | バツ | よ |
| (001) 48pt | 48pt | 製品1 | 42 | 2017 年 5 月 1 日 16:28:56 | 1 | 12.3 | 99.7 | 0.99 | 1 | 1 |
| (001) 48pt | 48pt | 製品1 | 42 | 2017 年 5 月 1 日 16:28:56 | 2 | 12.2 | 99.9 | 0.98 | 2 | 2 |
| (001) 48pt | 48pt | 製品1 | 42 | 2017 年 5 月 1 日 16:28:56 | 3 | 12.1 | 99.8 | 0.98 | 3 | 3 |
| | | | | | | | | | | |
私はjslスクリプトを試していますが、現時点では私の能力を超えています。 誰かがこれを達成する方法を教えてもらえますか?
ありがとうございました
問題の素晴らしい説明であり、あなたの計画はうまくいくと思います。 テキスト インポート プレビュー ウィザードを使用して、作業の一部を行うことができます。 行数を 5 に制限することでヘッダーを取得でき、固定幅のフィールドを選択することで 2 つの列を取得できます (または、区切り文字には複数のスペースを使用するとさらに効果的です)。 (データのカットアンドペーストでタブとスペースが台無しになった場合は、列区切り文字を少し調整する必要があるかもしれません)。 ソース スクリプトは表にあり、より大きなスクリプト用にコピーを取得できます。
Open(
"C:\Users\v1\Desktop\x.txt",
columns(
Column( "c000001", Character, "Nominal" ),
Column( "c000002", Character, "Nominal" ),
Omitted Column( . )
),
Import Settings(
Fixed Column Widths( 13, 28, 98 ),
Strip Quotes( 0 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 1 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 0 ),
Column Names Start( 1 ),
Data Starts( 1 ),
Lines To Read( 5 ),
Year Rule( "20xx" )
)
)
First five linesFirst five lines最初の 5 行
次に、5 行をスキップして再度インポートし、そのスクリプトも取得します。
Open(
"C:\Users\v1\Desktop\x.txt",
columns(
Column( "Point", Numeric, "Continuous", Format( "Best", 12 ) ),
Column( "Measurement", Numeric, "Continuous", Format( "Best", 12 ) ),
Column( "Gain", Numeric, "Continuous", Format( "Best", 12 ) ),
Column( "GFit", Numeric, "Continuous", Format( "Best", 12 ) ),
Column( "X", Numeric, "Continuous", Format( "Best", 12 ) ),
Column( "Y", Numeric, "Continuous", Format( "Best", 12 ) )
),
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Tab, CSV( 0 ) ),
Strip Quotes( 1 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 1 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 1 ),
Column Names Start( 7 ),
Data Starts( 8 ),
Lines To Read( "All" ),
Year Rule( "20xx" )
)
)
Data at bottom of fileData at bottom of fileファイルの下部にあるデータ
上記のすべての JSL は、テキスト インポート プレビュー ウィザードによって記述され、テーブルに添付されたソース スクリプトに格納されています。
The Subset section has part of the answerThe Subset section has part of the answerサブセットセクションには答えの一部があります