1
テキストファイルがあります。レコードはすべて "\ n \ n \ n \ n \ n"で区切られた複数行のレコードです。テキストファイルには、以下のようになります。Sparkでテキストファイルから複数行レコードを抽出する方法
出力は次のとおりです:
scala> contact.show
+------+------+-----+-------+--------------------+
| name|gender|title|company| phone_info|
+------+------+-----+-------+--------------------+
|Steven| male| mr.| ABC|[[cell,647-777-**...|
| Al| male| mr.| DEF|[[home,905-111-**...|
+------+------+-----+-------+--------------------+
とスキーマは次のとおりです。
scala> contact.printSchema
root
|-- name: string (nullable = true)
|-- gender: string (nullable = true)
|-- title: string (nullable = true)
|-- company: string (nullable = true)
|-- phone_info: array (nullable = true)
| |-- element: struct (containsNull = true)
| | |-- _1: string (nullable = true)
| | |-- _2: string (nullable = true)
name: Steven
gender: male
title: mr.
company: ABC
cell 647-777-****
home 905-000-****
work 289-***-1111
name: Al
gender: male
title: mr.
company: DEF
home 905-111-****
cell 289-991-****
私がやったことは以下のコードであります
予想される出力は次のとおりです。
+------+------+-----+-------+-------------+------------+
| name|gender|title|company| phone_type|number |
+------+------+-----+-------+-------------+------------+
|Steven| male| mr.| ABC| cell|647-777-****|
|Steven| male| mr.| ABC| home|905-000-****|
|Steven| male| mr.| ABC| work|289-***-1111|
| Al| male| mr.| DEF| home|905-111-****|
| Al| male| mr.| DEF| cell|289-991-****|
+------+------+-----+-------+-------------+------------+
私が必要とする出力を得るためにコードを変更する方法を教えてもらえますか?ありがとう。
次はうまくいく
ありがとうございました。私はあなたのコードを試して、それは動作します。 –