7

实际上要解决的问题是获取 PySpark 数据帧的第一行/最后 N 行,并将结果作为数据帧。具体来说,我希望能够做这样的事情:

 my_df.head(20).toPandas()

但是,因为head()返回行列表,我收到此错误:

AttributeError: 'list' object has no attribute 'toPandas'

因此,我正在寻找将 PySpark 数据帧的前 N ​​行作为数据帧返回的方法,或者将这些行列表转换为数据帧的方法。有任何想法吗?

4

1 回答 1

9

limit

>>> df = sc.parallelize((("a", 1), ("b", 2))).toDF()
>>> df.limit(1).toPandas()
  _1  _2
0  a   1

pd.DataFrame

>>> pd.DataFrame(df.head(1), columns=df.columns)
  _1  _2
0  a   1
于 2016-05-01T18:25:55.390 回答