いくつかのデータを含む (大きな) CSV ファイルがあります。そして、私はcode.kx.com
使用からの輸入業者を持っています.Q.fsn
colnames:`Symbol`Date`Time`Sequence`Exchange`Type`Level`Condition`Price`Size`BuyerID`SellerID
.Q.fsn[{`:newCreatedFile upsert flip colnames!("SDTISSISFISS";",") 0:x};`:C:/myDir/data.csv 5000000]
このコードは、ビッグ データ ファイルが 5000000 バイトのチャンクでデータを処理したと仮定して、newCreatedFile
からのデータで名前が付けられたファイルを作成します。data.csv
質問:
このデータから 2 つの個別のファイルを作成したいのですが、区別の基準が「状態」列の値であるとしましょう。各行について、Condition 列の値が x、y、または z の場合はファイル A.csv に、それ以外の場合は B.csv に入れます。
if ステートメントの擬似コードは次のとおりです。
$[Condition in `x`y`z; Afunction ; Bfunction]
Afunction:{`:newA upsert flip ...};
Bfunction:{`:newB upsert flip ...};
if ステートメントをどのように設定する必要がありますか? 私は現在持っています:
$[datatable.Condition = `SomeCondition; fileA;fileB]
しかし、タイプエラーが発生します。特定の列の各値を一致させるにはどうすればよいですか?
元のデータ ファイルをインポートするとき、またはデータ ファイルが でテーブルに作成された後にチェックする必要がありますkdb
か?