text2cols


目次

概要

区切られた文字列を取り、それを解析して複数列に分割します。

LabTalkがサポートしている関数CatIndexおよびCatrowsをご参照ください。

追加の情報

ダイアログボックスはユーザインタフェースのメニューコマンドからは利用できません。他のXファンクションダイアログと同様に、スクリプトまたはコマンドウィンドウを開き、次のように入力してEnterキーを押します。

text2cols -d

スクリプトでのアクセスについては、次の項コマンドラインでの使用法をご参照ください。

コマンドラインでの使用法

text2cols ix:=[Book2]Sheet1!B delimiter:=pipe; // [Book2] Sheet1!Bのパイプで区切られた文字列を入力、出力値として新しいシートの列に分割する

変数

表示
変数
I/O

データ型
デフォルト
説明
テキスト列 ix 入力
vector<string>
<active>
テキスト列。セルには、区切られた値の文字列が含まれています。区切り文字は、区切り文字にリストされているもののいずれかでなければなりません。
区切り文字 delimiter 入力
int
0
区切り文字。次の値を使用します。
  • 0=comma:カンマ
  • 1=semicolon:セミコロン
  • 2=pipe:パイプ
  • 3=space:空白のスペース
他の列を含める nosplit 入力
int
0
出力で他の列をコピーするかどうかを指定します。
  • 0 = false
  • 1 = true
含める列 other 入力
range
<optional>
出力(解析済みデータ)とともにコピーされる他の列です。
出力 rd 出力
ReportData
[input]<new>
出力です。区切られた文字列は、解析されて個別のセル(列)に分割されます。

説明

このXファンクションは、区切られた値のセルまたは列を取り、それらを解析して新しい列に分割します。

サンプル

このサンプルではカテゴリカルデータを含むASCIIファイルをインポートし、catrows()$関数を使用して各カテゴリの行インデックスを取得し、それらの行インデックスを新しい列に出力します。結果シートtext2colsには各カテゴリの行インデックスがリストされます。

// 空のワークブックを作成し、automobile.dat ファイルをインポート
newbook; string fname$= system.path.program$ + "Samples\Statistics\automobile.dat";
impASC;
// 2番目の列をカテゴリとして設定し、昇順にソート
wks.col2.categorical.type=2;
wks.col2.categorical.sort=1;
// 2番目の列を範囲変数rAとする
range rA = [automobile]automobile!"Make";
// 新しいブックを作成し、category関数を使用してrAのカテゴリを新しいブックのA列にコピー
// B列には、各カテゴリが出現する行インデックスをパイプ区切りリストとして追加
newbook;
col(A)=category(rA)$;
col(B)=catrows(rA)$;
// [Book2]Sheet1!B のパイプで区切られた文字列を入力として受け取り、<input>の新しいシートに値を出力
text2cols ix:=[Book2]Sheet1!B delimiter:=pipe nosplit:=1 other:=[Book2]Sheet1!A;

キーワード:文字列の処理, カテゴリー, catindex, catrows