检查Spark DataFrame

时间:2016-11-15 09:42:35

标签: python apache-spark pyspark spark-dataframe

我在python中有一个带有嵌套列的Spark DataFrame,我有路径a.b.c,想要检查 c 之后是否有嵌套列 d < / strong>,所以如果a.b.c.d存在。

只需检查df.columns['a']['b']['c']['d']df.columns['a.b.c.d']似乎不起作用,因此我发现可以使用df.schema功能。 所以我只是迭代例如:

y = df.schema['a'].dataType['b'].dataType['c'].dataType

然后通常应检查 d 是否在 y

我这样做的方法就是尝试y['d'],如果失败了,那就不存在了。 但我不认为使用尝试是最好的方式。

所以我尝试检查if 'd' in y,但显然这不起作用,但检索元素y['d']是否有效。

y的类型为StructType(List(StructField(d,StringType,true),...other columns))

所以我真的不知道如何正确检查d是否在y中。当我可以检索if 'd' in y时,为什么我无法直接检查y['d']?有人可以帮忙吗?我也是python的新手,但我找不到或想到另一个解决方案。

0 个答案:

没有答案