Houdini 17.5 ノード TOPノード

CSV Input TOP node

CSVファイルのデータをワークアイテムのアトリビュートにコピーします。

On this page

概要

このノードは、入力のCSVファイル内の行毎にワークアイテムを生成します(といっても、 Limit Rows パラメータで行数を制限することができます)。 これは、指定した特定の列のデータを抽出してワークアイテムのアトリビュートにコピーしたり、すべての列を自動的にコピーすることができます。

これは、ユーザが扱いたいワークのリストを指定することができるので便利です。

これと反対のノード(ワークアイテムのアトリビュートをCSVファイルに書き出す)がCSV Outputノードです。

How to

デフォルトでは、このノードに入力ファイルが存在すれば、入力の行毎にワークアイテムが生成されます。 しかし、このノードは何もデータを抽出しません 。 どのようにCSVデータを準備すべきか決定し、そこから抽出したい列を指定する必要があります。

  1. CSVデータの取得先を指定します 。以下のどれかで指定します:

    • 入力のワークアイテムのResult DataにCSVファイルが存在する場合は、 Upstream Result Files を選択してください。

      例えば、File Patternノードを使ってファイルのリストを取得した場合、そのFile Patternノードの後にWait for Allノードを追加し、そのWait for Allノードをこのノードに接続してください。 File Patternノードで*.csvファイルにのみ一致するようにさせた場合、そのFile PatternノードのResult Data Tagパラメータをfile/csvに設定します。 最後に、CSV Inputノードの Upstream Result Files を選択します。

    • 静的に 1個の CSVファイルを読み込みたい場合、 Custom File Path を選択して、その静的なCSVファイルのパスを File Path に設定します。

  2. 抽出する内容を選択します 。以下のどれかを選択します:

    • それぞれの列からデータを抽出したい場合は、 Columns to Extract マルチパラメータを使って、抽出したい列と使用したいアトリビュート名を指定します。CSVファイルにヘッダ行が含まれている場合は、 Has Header Row を有効にすることで、その行をデータとして使用せずに 無視 することができます。

    • すべての列を抽出したい場合は、 Extract All を有効にします。CSVファイルにヘッダ行が含まれている場合は、 Has Header Row を有効にすることで、そのヘッダ行を 使用 してアトリビュートの名前を付けます。CSVファイルにヘッダ行が含まれていない場合は、このノードはcolumn_0, column_1といったようにアトリビュートの名前を付けます。

    Extract All を使用すると、すべての値が 文字列 として抽出されます。CSVファイル内の数値を適切なタイプで抽出したい場合は、手動で列を抽出してください。

  3. ノードでワークアイテムを生成したら、そのアトリビュートをチェックしてみてください。

メモ

  • 入力ファイルが複数存在する場合(上流のワークアイテムのResult Dataに複数のパスが存在する場合)、このノードは、各ファイルの行毎に別々のワークアイテムを生成します(といっても、 Limit Rows パラメータで行数を制限することができます)。

  • レンダーファーム上でネットワークをクックできるようにするには、必ず入力のCSVファイルを共有ネットワークファイルシステムに配置してください。

TOP Attributes

csv_rowindex

integer

ワークアイテムの生成元であるCSVファイル内の行のインデックス。これは0から始まるので、ヘッダ行が存在すればその行を含めないでください。

csv_columns

string array

CSV行から抽出されたアトリビュートの名前の配列。 このアトリビュートはオプションで生成され、CSV Outputノードで使用することができます。

パラメータ

Input

File

How do decide what file(s) to delete:

Custom File Path

読み込みたい1個のCSVファイルのパスを指定します(このフィールドはファイルパターンには対応していません)。

Upstream Result Files

入力ワークアイテムのoutputファイルパスを、読み込むファイル(s)として使用します。 ファイルタグ(通常ではfile/csv)を指定すると、このノードはそのタグが付いたファイルのみを使用するようになります。

File Path

Custom File Path を選択すると、読み込みたい1個のCSVファイルのパスを指定することができます(このフィールドはファイルパターンには対応していません)。

Result Tag

File が"Upstream Result Files"の時、このファイルタグが付いている入力ワークアイテムのoutputアトリビュートのパスが削除されます。

Has Header Row

CSVファイル(s)にヘッダ行(コラム名を含む)が含まれている場合は、これを有効にします。 個々の行を抽出する際には、このノードはそのヘッダ行を無視するようになります(これを無効にすると、そのヘッダ行をデータとして受け取ります)。 Extract All を選択すると、このノードは、そのヘッダ行を使ってアトリビュートに名前を付けます。

Limit Rows

このノードが生成するワークアイテムの数を意図的に制限します。 このノードは通常通りに入力の行を順々に読み込んで行き、ここで指定されたワークアイテムの数に到達したら読み込みを停止します。 この制限があるおかげで、暴走プロセスが不意に巨大なCSVファイルを生成してしまっても心配不要であり、人がCSVファイルを作成した場合でも一定数を越えないように行数を抑える規則を守りたい場合で役立ちます。 しかし、この設定によって、このノードは何もメッセージを出すことなく正しいデータを破棄してしまうことを忘れないでください。

Work Item Index

上流のワークアイテムからワークアイテムを生成する時にそのワークアイテムインデックスの設定方法を選択します。

Row Index

CSV行インデックスをワークアイテムインデックスとして使用します。

Upstream Index

上流のワークアイテムのインデックスを使用します。

Column Delimiter

これを有効にすると、明示的にコラム区切り文字を設定することができます。 これが無効になっていると、このノードは、ファイルの頭の数行から区切り文字を推測します。

Add Columns Attribute

これを有効にして文字列配列アトリビュートの名前を指定すると、CSVから抽出された列の名前をそのアトリビュートに格納することができます。 その列の名前の順番は、CSVファイルの列と同じになります。このアトリビュートはCSV Outputノードで使用することができます。

Extraction

列の抽出を指定する方法を選択します。

By Column Index

Columns to Extract で、抽出したい列を0ベースのインデックスで指定します。

All

これを有効にすると、このノードは、すべての列をワークアイテムのアトリビュートにコピーします。 生成されるアトリビュートは常に文字列アトリビュートになります。 適切に数値データのタイプを指定したいのであれば、これを無効にして、"手動"で列を抽出してください。 Has Header Row を有効にすると、このノードは、ヘッダ行を使ってアトリビュートの名前を付けます。 Has Header Row を無効にすると、このノードは、column_0, column_1といったようにアトリビュートの名前を付けます。

By Column Name

Columns to Extract で、抽出したい列のヘッダ名を指定します。

By Attribute

Input Columns Attribute で、読み込みたい列名または列インデックスのアトリビュートの名前を指定します。

Input Columns Attribute

ExtractionBy Attribute に設定したら、読み込みたい列名または列インデックスのアトリビュートの名前を指定します。 このアトリビュートには、文字列配列または整数配列を指定することができます。 列名は必ずCSVファイルのヘッダに合わせ、インデックスは左から右の0ベースの番号を指定してください。

Columns to Extract

ExtractionBy Column Index または By Column Name に設定したら、このマルチパラメータを使って、入力の列名または列インデックスとアトリビュート名/タイプとのマッピングをセットアップすることができます。

CSV Column Index

データの読み込み元の列番号。1番目の列番号が0、2番目の列番号が1といった感じです。

CSV Column Name

データを読み込むCSVファイルの列ヘッダ名。

Attribute Name

値の割当先となるアトリビュートの名前。

Value Index

アトリビュートには複数値を格納することができます(ベクトルやリストを収納することができます)。 これを設定することで、アトリビュート値のリストに値を挿入する位置を制御することができます。

Type

抽出する値のデータタイプ(String, Integer, Float)。

Processor

Work Item Generation

このノードが静的または動的なワークアイテムのどちらを生成するかどうか。 このノードのワークアイテムが静的に計算可能かどうか、もしくは、動的に生成させる必要があるかどうか分からないのであれば、通常では、これを"Automatic"のままに設定してください。

Dynamic

このノードが常に動的なワークアイテムを生成します。つまり、上流のワークアイテムが判明するまで待機し、その上流のワークアイテムから新しいワークアイテムを生成します。

Static

このノードが常に静的なワークアイテムを生成します。つまり、ネットワークを実行する前にパラメータ(と上流の静的なワークアイテム)に基づいて必要だと思われるだけの数のワークアイテムを生成します。

Automatic

入力が静的(静的なプロセッサ、静的な入力のみを使ったパーティショナー、マッパー)な場合、このノードは静的なワークアイテムを生成し、そうでない場合、動的なワークアイテムを生成します。

Examples

example_top_csvinput Example for CSV Input TOP node

このサンプルでは、CSVファイルからデータを読み込む方法について説明しています。 CSV Inputノードは、CSVファイルを読み込んで、行毎に1個のワークアイテムを生成します。

The following examples include this node.

example_top_csvinput Example for CSV Input TOP node

このサンプルでは、CSVファイルからデータを読み込む方法について説明しています。 CSV Inputノードは、CSVファイルを読み込んで、行毎に1個のワークアイテムを生成します。

example_top_csvmodify

このサンプルでは、CSV Modifyノードを使ってCSVファイルを制御する方法について説明しています。

See also

TOPノード

  • Attribute Copy

    あるブランチのワークアイテムのアトリビュートを他のブランチのワークアイテムにコピーします。

  • Attribute Create

    入力のワークアイテムすべてに対してアトリビュートを作成または設定します。

  • Attribute Delete

    ワークアイテムからアトリビュートを削除します。

  • Attribute from String

    ファイル名などの文字列からアトリビュート値を解析します。

  • Block Begin Feedback

    For-Loop with Feedbackブロックを開始します。このブロック内のTOPノードは直列で実行され、オプションで入力のワークアイテム毎にループさせることができます。

  • Block End Feedback

    For-Loop with Feedbackブロックを終了します。このブロック内のTOPノードは直列で実行され、オプションで入力のワークアイテム毎にループさせることができます。

  • CSV Input

    CSVファイルのデータをワークアイテムのアトリビュートにコピーします。

  • CSV Output

    ワークアイテムのアトリビュートをCSVファイルに書き出します。

  • Command Send

    実行させたいコードを共有サーバーに送信します。

  • Command Server End

    サーバーブロックを終了します。

  • Deadline Scheduler

    Thinkbox社のDeadlineソフトウェア用PDGスケジューラ。

  • Download File

    1つ以上のURLの内容をファイルにダウンロードします。

  • Environment Edit

    ワークアイテムのコマンドラインが実行する環境下で設定する変数を編集します。

  • Error Handler

    失敗したワークアイテムのエラーハンドル。

  • FFmpeg Encode Video

    静止画像シーケンスを動画に変換します。

  • FFmpeg Extract Images

    動画ファイルから静止画像シーケンスを抽出します。

  • File Compress

    ファイルをアーカイブに圧縮します。

  • File Copy

    実行時またはノードがファイルを生成した時に、ファイルをある場所から別の場所にコピーします。

  • File Decompress

    入力のワークアイテムで指定されたアーカイブファイルを個々のファイルに解凍します。

  • File Pattern

    特定のパターンに合致したファイルに基づいてワークアイテムを生成します。

  • File Remove

    指定したパスのファイルを削除します。

  • File Rename

    ファイルを名前変更または移動させます。

  • Filter By Expression

    上流のワークアイテムを条件付きでフィルタリングします。

  • Generic Generator

    アトリビュートなしでコマンドラインを実行するワークアイテムを生成します。

  • Generic Server Begin

    汎用コマンドサーバーを起動します。

  • Geometry Import

    SOPまたはファイルジオメトリのポイントまたはプリミティブをワークアイテムアトリビュートまたは一時ファイルに読み込みます。

  • HDA Processor

    デジタルアセットをクックするワークアイテムを生成します。

  • HQueue Scheduler

    HQueueを使用してワークアイテムのスケジュールを組みます。

  • Houdini Server Begin

    持続型Houdiniコマンドサーバーを起動します。

  • ImageMagick

    一括で画像変換、サイズ変更、画像モザイクなどのImageMagickの機能に簡単にアクセスすることができます。

  • Invoke

    入力ジオメトリに対してコンパイルブロックを呼び出します。

  • Json Input

    JSONファイルからデータを抽出してアトリビュートを作成します。

  • Json Output

    JSON出力を生成する色々なオペレーションを実行します。

  • Local Scheduler

    ローカルマシン上でワークアイテムのスケジュールを組みます。

  • Make Directory

    ディレクトリを作成します。

  • Map All

    上流のすべてのワークアイテムを下流のワークアイテムにマップします。

  • Map by Expression

    エクスプレッションを使って、上流のワークアイテムを下流のワークアイテムにマップします。

  • Map by Index

    上流のワークアイテムをインデックスに基づいて下流のワークアイテムにマップします。

  • Map by Range

    範囲を使って上流のワークアイテムを下流のワークアイテムにマップします。

  • Maya Server Begin

    持続型Mayaコマンドサーバーを起動します。

  • Merge

    上流のすべてのワークアイテムを結合します。

  • Null

    何もしません。

  • OP Notify

    何かしらのTOPワークが完了したことを通知します。

  • Output

    サブネット出力。

  • Partition by Attribute

    アトリビュートに基づいてワークアイテムを区分けします。

  • Partition by Bounds

    境界アイテムを使って、ソースアイテムを空間的に区分けします。

  • Partition by Combination

    ワークアイテムを2個毎、3個毎などに区分けします。

  • Partition by Comparison

    既存の比較を使ってワークアイテムを区分けします。

  • Partition by Expression

    エクスプレッションに基づいてワークアイテムを区分けします。

  • Partition by Frame

    フレームに基づいてワークアイテムを区分けします。

  • Partition by Index

    インデックスに基づいてワークアイテムを区分けします。

  • Partition by Node

    ノードに基づいてワークアイテムを区分けします。

  • Partition by Range

    範囲に基づいてワークアイテムを区分けします。

  • Partition by Tile

    軸に平行な境界ボックスを使ってワークアイテムを空間的に区分けします。

  • Perforce

    PDG経由でPerforceコマンドを実行します。

  • Python Mapper

    Pythonスクリプトを使ってワークアイテムをマップします。

  • Python Partitioner

    Pythonスクリプトを使ってワークアイテムを区分けします。

  • Python Processor

    Pythonスクリプトを使ってワークアイテムを生成します。

  • Python Scheduler

    Pythonベースでプログラミング可能なPDG用スケジューラ。

  • Python Script

    スクリプトを実行するワークアイテムを生成します。

  • ROP Alembic Output

    埋め込まれたROP Alembicノードをクックするワークアイテムを生成します。

  • ROP Composite Output

    埋め込まれたROP Compositeノードをクックするワークアイテムを生成します。

  • ROP Fetch

    ROPノードまたはROPネットワークをクックするワークアイテムを生成します。

  • ROP Geometry Output

    埋め込まれたROP Geometryノードをクックするワークアイテムを生成します。

  • ROP Mantra Render

    埋め込まれたROP Mantraノードをクックするワークアイテムを生成します。

  • Render IFD

    Mantraを使ってIFDをレンダリングするワークアイテムを生成します。

  • SQL Input

    SQLクエリの作成と行毎にワークアイテムを生成する入力ノードです。

  • SQL Output

    SQL INSERTクエリを生成する出力ノードです。

  • Send Email

    電子メールを送信します。

  • Shotgun Create

    Shotgunエンティティを作成します。

  • Shotgun Download

    ShotgunからAttachmentをダウンロードします。

  • Shotgun Find

    Shotgunエンティティを検索します。

  • Shotgun New Version

    Attachmentと一緒に新しいVersionを作成します。

  • Shotgun Session

    Shotgunインスタンスに接続するセッションを開始します。

  • Shotgun Update

    既存のShotgunエンティティのフィールドを更新します。

  • Shotgun Upload

    ShotgunでAttachmentを作成します。

  • Sort

    アトリビュートのリストからワークアイテムを並べ替えます。

  • Split

    上流のワークアイテムを2つのグループに分けます。

  • Switch

    ネットワーク分岐を切り替えます。

  • TOP Fetch

    他のTOPネットワークをクックします。

  • TOP Fetch Input

    TOP Fetchで取得したネットワークの入力。

  • Text to CSV

    プレーンテキストをCSVに変換します。

  • Tractor Scheduler

    PixarのTractorを使ってワークアイテムのスケジュールを組みます。

  • Wait for All

    上流のワークアイテムすべてが完了するのを待ちます。

  • Wedge

    アトリビュート値を色々と変えながらワークアイテムを生成します。

  • Work Item Expand

    ファイルリストまたはパーティションを複数のワークアイテムに展開します。

  • Xml Input

    XMLファイルからデータを抽出し、そのデータを含んだ文字列アトリビュートを生成します。