-1

爆発()関数の後に最初の要素だけを取ることは可能ですか?

+-----------------------------------------+
|dog                                      |
+-----------------------------------------+
|[[Max,Black],3]                          |
|[[Spot,White],2]                         |
|[[Michael,Yellow],1]                     |
+-----------------------------------------+

たとえば、上記の場合、[Max, Black]、[Spot, white]、および [Michael,Yellow] のみを保持します。各セルの 2 番目の要素 (3、2、および 1) は、実際には破棄できます。

ありがとう!

4

1 に答える 1

1

スキーマが次のようになっていると仮定します。

root
 |-- dog: struct (nullable = false)
 |    |-- col1: struct (nullable = false)
 |    |    |-- col1: string (nullable = false)
 |    |    |-- col2: string (nullable = false)
 |    |-- col2: integer (nullable = false)

次に、次のことができます。

test.withColumn("dog", $"dog".getField("col1"))

または、両方の列を保持したい場合は、次のようにします。

test.select($"dog", $"dog".getField("col1") as "dog2")
于 2016-04-26T11:37:47.577 に答える