在python2.7中,当我将pandas转换为pyspark数据框时,得到乱码



origin pandas dataframe

id           song_name
001MpsbI1FoQgs02 只想好好爱一回
000qq4Kk2WMPgU02  大森林的早晨

,我尝试将pandas数据框转换为pyspark数据框。

代码:

all_song_py=spark.createDataFrame(all_song[[u'id',u'song_name']],mySchema)

的结果是:

|     id         |    song_name         
|001MpsbI1FoQgs02|åªæƒ³å¥½å¥½çˆ±ä¸€å›ž           
|000qq4Kk2WMPgU02|大森林的早晨

我尝试使用下面的代码解码乱码字符,但它不起作用。

decode_udf= udf(lambda val: urllib.unquote(val.encode('utf-8')).decode('gb18030'), StringType())

的结果是:

氓聫陋忙聝鲁氓楼陆氓楼陆莽聢卤盲赂聙氓聸聻

解决方案吗?

解决!通过导入pyspark.sql.functions编码和解码函数

最新更新