在pysp中将流水线RDD转换为Dataframe时出错

2024-05-26 11:55:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将下面的流水线RDD转换为数据帧。在

流水线式RDD->;用户RDD

['new_user1',
 'new_user2',
 'Onlyknows',
 'Icetea',
 '_coldcoffee_']

我试图用下面的代码进行转换

^{pr2}$

我得到以下错误:

ValueError: Unexpected tuple 'new_user1' with StructType

我还尝试使用toDF():

user_df=user_rdd.toDF()

这次遇到的错误是:

TypeError: Can not infer schema for type: <type 'str'>

请告诉我是否有方法使用pyspark将其转换为dataframe。在


Tags: 数据用户gtnewtype错误流水线rdd
1条回答
网友
1楼 · 发布于 2024-05-26 11:55:09

您拥有的rdd是一个字符串列表,本质上是1d数据;数据帧需要2d数据;将rdd中的每个元素转换为元组应该可以解决以下问题:

user_df = sqlContext.createDataFrame(user_rdd.map(lambda x: (x,)), schema)
#                                             ^^^^^^^^^^^^^^^^^^^  
user_df.show()
+      +
|    Username|
+      +
|   new_user1|
|   new_user2|
|   Onlyknows|
|      Icetea|
|_coldcoffee_|
+      +

相关问题 更多 >