コンテンツにスキップ

文字列同士の結合

複数の列の値や決まった文字をつないで、1 つの文字列にします。姓と名を結合する、都道府県と市区町村をつないで住所にする、キーを組み立てる、といった使い方をします。

つなぐのは同じ行の中の値です。複数行の値を 1 つにまとめたいならグループごとの結合を使ってください。

入出力

ポート内容
入力データデータ
出力データデータ

Spark エンジンでも動きます。行の数は変わりません。

設定項目

結果の挿入先を設定
新規列に挿入(既定)か既存列に上書き。選んだ方で、次に出る項目が変わります。
新規列名を入力必須
「新規列に挿入」のときに出ます。つないだ結果を入れる新しい列の名前。
列を選択必須
「既存列に上書き」のときに出ます。つないだ結果の書き戻し先。ここで選ぶのは書き戻し先だけで、つなぐ元は下の「結合する要素を設定」で指定します。
結合する要素を設定
つなぐものを要素1・要素2…と並べます。いくつでも足せます。上から順につながります。
固定文字を結合する
要素ごとの設定です。off(既定)なら列を選択が出て、その列の値をつなぎます。on にすると文字を入力が出て、全行に同じ文字が入ります。
処理対象列を結果から除外する
オプションの中にあります。on にすると、要素として指定した列を結果から消します。固定文字は関係ありません。「既存列に上書き」で選んだ書き戻し先の列は、要素に使っていても消えません。
区切り文字を指定する
オプションの中にあります。要素と要素の間に入れる文字。空のままだと詰めてつながります。

文字列以外の列をつなぐとき

数値・日付・日付時間・時間の列もつなげます。 値は文字にしてからつながれます。

元の型つながる形
日付2024-01-01
日付時間2024-01-01 12:34:56(秒より下が 0 なら省かれます)
時間12:34:56
数値見たままの数字

空欄が混ざっている列をつなぐと、その部分は空文字になります。 行ごと消えたりはせず、その要素だけが詰まります。区切り文字を指定していれば、区切り文字は残ります。

結果の列は文字列です。

エラーと対処

新規列名が既にある

「新規列に挿入」で、入力した列名がすでにデータにあるときに出ます。

新規列名({{new_col}})が既存の列名と重複しています。

直し方 — 別の名前にするか、その列を書き換えてよいなら「既存列に上書き」に切り替えてください。

列を選ばずに実行した

「列を選択」が空のまま実行したときに出ます。前の処理で列名が変わり、選んでいた列が入力データからなくなったときにも同じメッセージです。

対象の列が選択されていません。

直し方 — 列を選び直してください。

よく使う例

1. 姓と名をつなぐ

お題 — 姓と名が別の列に分かれている

入力 — 姓 に 山田、名 に 太郎

設定 — 新規列名 氏名、要素1 に 姓、要素2 に 名、区切り文字に半角スペース

出力 — 氏名 に 山田 太郎

2. 住所を組み立てる

お題 — 都道府県・市区町村・番地が 3 列に分かれている

入力 — 東京都 / 渋谷区 / 道玄坂1-2-3

設定 — 要素を 3 つ並べ、区切り文字は空

出力 — 東京都渋谷区道玄坂1-2-3

3. 固定の文字を挟む

お題 — 番号の前に区分を付けた ID を作りたい

入力 — 番号 に 001

設定 — 要素1 で「固定文字を結合する」を on にして A、要素2 も on にして -、要素3 に 番号 列

出力 — A-001

4. 結合用のキーを作る

お題 — 店舗と日付の組み合わせを 1 つのキーにしたい

入力 — 店舗 に S01、日付 に 2024-01-01

設定 — 要素に 店舗 と 日付、区切り文字 _

出力 — S01_2024-01-01

注意 — キー列を指定する結合は複数のキー列をそのまま指定できます。結合のためだけなら 1 列にまとめる必要はありません

5. つないだ元の列を消す

お題 — つないだあと、元の列は残したくない

入力 — 姓 名 年齢

設定 — 要素に 姓 と 名、オプションの「処理対象列を結果から除外する」を on

出力 — 氏名 と 年齢 だけが残り、姓 と 名 は消える

6. 空欄のある列をつなぐ

お題 — 建物名が空の行がある

入力 — 市区町村 に 渋谷区、建物名 が空欄

設定 — 要素に 市区町村 と 建物名、区切り文字 -

出力 — 渋谷区-(空欄の分だけが空文字になり、区切り文字は残る)

関連