pyspark:将 DataFrame 转换为 RDD[string]

2024-02-12

我想转换pyspark.sql.dataframe.DataFrame to pyspark.rdd.RDD[String]

我转换了一个 DataFramedf to RDD data:

data = df.rdd
type (data)
## pyspark.rdd.RDD 

新的RDDdata包含Row

first = data.first()
type(first)
## pyspark.sql.types.Row

data.first()
Row(_c0=u'aaa', _c1=u'bbb', _c2=u'ccc', _c3=u'ddd')

我想转换Row到列表String,如下例所示:

u'aaa',u'bbb',u'ccc',u'ddd'

Thanks


PySpark Row只是一个tuple并且可以这样使用。这里你所需要的只是一个简单的map (or flatMap如果你也想压平行)list:

data.map(list)

或者如果您期望不同的类型:

data.map(lambda row: [str(c) for c in row])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pyspark:将 DataFrame 转换为 RDD[string] 的相关文章

随机推荐