我在pyspark中有一个很大的Dataframe,其中一列名为distance\u range,如下所示:
+---------------------+
|distance_range|
+---------------------+
| 6-10 mil|
| 2-4 mil|
| 10-15 mil|
| 20-30 mil|
| 15-20 mil|
| 4-6 mil|
| 6-10 mil|
| 0.5-2 mil|
| 2-4 mil|
| 2-4 mil|
| 4-6 mil|
| 30-40 mil|
虽然我想看到这列的不同值,并进一步以这列为轴心。
df.select('distance_range').distinct().show()
它总是返回错误:
Py4JJavaError: An error occurred while calling o1884.showString.
TypeError: unorderable types: NoneType() < float()
此列为字符串类型,没有空值
此列由生成
def dist_range(distance):
elif 0.5 <= distance <2:
return '0.5-2 mil'
elif 2 <= distance <4:
return '2-4 mil'
.
.
.
elif 20 <= distance <30:
return '20-30 mil'
else 30 <= distance <40:
return '30-40 mil'
udf_distance_range = udf(dist_range, StringType())
df = original_df.withColumn("distance_range", udf_distance_range("home_store_dist"))
暂无答案!
目前还没有任何答案,快来回答吧!