作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Spark DataFrame df
具有以下架构:
root
|-- k: integer (nullable = false)
|-- v: array (nullable = true)
| |-- element: struct (containsNull = true)
| | |-- a: integer (nullable = false)
| | |-- b: double (nullable = false)
| | |-- c: string (nullable = true)
a, c
在
v
来自
df
没有做
map
?特别是
df
从 Parquet 文件加载,我不想要
c
的值甚至可以加载/阅读。
最佳答案
这完全取决于您期望作为输出的内容,这从您的问题中不清楚。让我澄清一下。
你可以做
df.select($"v.a",$"v.b").show()
v
是一个数组,它将为 a 生成一个数组,每个 b 生成一个数组。您可能想要做的是
explode
然后数组 v 从分解的数据框中选择:
df.select(explode($"v").as("v" :: Nil )).select($"v.a", $"v.b").show()
关于apache-spark - 从结构数组中选择 Spark DataFrames 中的特定列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37172254/
我是一名优秀的程序员,十分优秀!