【Ruby3.x】CSV::Row::[]=()メソッドの使い方
[]=メソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
CSV::Row#[]=メソッドは、CSVの1行分のデータを表すCSV::Rowオブジェクトに対して、特定の列に値を設定または更新するために使用するメソッドです。
このメソッドは、CSVファイルをプログラムで読み込み、その内容を操作する際に重要な役割を果たします。例えば、既存のCSVデータのあるセルを修正したり、新しい情報を特定の列に追加したりする場合に活用されます。
第一引数には、値を設定したい列を識別するためのキーを指定します。このキーは、列のヘッダ名を表す文字列、あるいは列の先頭から数えた0から始まるインデックス(番号)のどちらでも指定可能です。例えば、ヘッダが「商品名」である列に新しい値を設定する場合は row["商品名"] = "新商品A" のように、また、3番目の列(インデックス2)に値を設定する場合は row[2] = 1500 のように記述します。
第二引数には、その列に設定したい具体的な値を渡します。このメソッドが実行されると、指定されたキーに対応する列が存在すれば、その値が新しい値で上書きされます。もしヘッダ名で指定された列がまだ行に存在しない場合は、その列が新しく追加されることもあります。
このように、CSV::Row#[]=メソッドは、CSVデータを動的に編集し、必要な情報で更新する処理をRubyプログラム内で簡潔に記述するための基本的な機能を提供します。これにより、CSVデータを扱うアプリケーションの開発において、データの操作性が向上し、効率的なコーディングが可能になります。
構文(syntax)
1require 'csv' 2 3row = CSV::Row.new(['header1', 'header2'], ['value1', 'value2']) 4row['header1'] = 'new_value'
引数(parameters)
key, value
- key: CSV の行におけるカラム名を指定します。
- value: 指定したカラム名に設定する値を指定します。
戻り値(return)
Object
CSV::Row オブジェクトの指定されたフィールドに値を設定します。設定された値が返されます。