pyspark - StructType 不能接受对象?

标签 pyspark

如何解决这个问题?

rdd.collect()  //['3e866d48b59e8ac8aece79597df9fb4c'...]

rdd.toDF()    //Can not infer schema for type: <type 'str'>

myschema=StructType([StructField("col1", StringType(),True)])
rdd.toDF(myschema).show()

//StructType 无法接受类型为“3e866d48b59e8ac8aece79597df9fb4c”的对象

最佳答案

看来你有:

rdd = sc.parallelize(['3e866d48b59e8ac8aece79597df9fb4c'])

这是一个一维数据结构,一个数据框是2d;将每个数字映射到一个元组可以解决这个问题:

rdd.map(lambda x: (x,)).toDF().show()
+--------------------+
|                  _1|
+--------------------+
|3e866d48b59e8ac8a...|
+--------------------+

关于pyspark - StructType 不能接受对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47927044/

相关文章:

apache-spark - PySpark 中的 DataFrame#filter 找不到现有列

python - 即使在正确的位置提到了该文件,输入文件也不存在 - pyspark

azure - 自动加载器过滤重复项

python - 如何动态获取Databricks Notebook的路径?

pyspark 从星期四开始的一周获取月份的周数

python - 当我尝试启动 PySpark 时出现空指针异常

python - 如何将大型 python 模型应用于 pyspark-dataframe?

python - 如何加入 Pyspark 中的多个列?

apache-spark - Databricks Pyspark - 组相关行

nlp - 为 GLoVe 词向量文件创建 Spark 模式