如何在PySpark中只打印某一列DataFrame?

时间:2016-03-10 10:14:49

标签: python apache-spark dataframe pyspark

是否可以使用collecttake操作仅打印给定的DataFrame列?

df.col.collect()

给出错误

  

TypeError:'列'对象不可调用

和此:

df[df.col].take(2)

给出

  

pyspark.sql.utils.AnalysisException:u"过滤表达式' col' string类型不是布尔值。;"

1 个答案:

答案 0 :(得分:21)

selectshow

df.select("col").show()

selectflatMapcollect

df.select("col").rdd.flatMap(list).collect()

括号表示法(df[df.col])仅用于逻辑切片,而列本身(df.col)不是分布式数据结构,而是SQL表达式,无法收集。