我想创建一个新列,它是其他一些列的json表示。列表中的键、值对。
资料来源:
Ottawa5控制面板上的原始目的地计数10
我想要的是:
origindestinationcountjsontorontoottawa5[{“origin”:“toronto”},{“destination”,“ottawa”},{“count”:“5”}]montrealvancouver10[{“origin”:“montreal”},{“destination”,“vancouver”},{“count”:“10”}]
(一切都可以是一个字符串,无所谓)。
我试过这样的方法:
df.withColumn('json', to_json(struct(col('origin'), col('destination'), col('count'))))
但它会创建一个包含所有 key:value
在一个对象中成对:
{"origin":"United States","destination":"Romania"}
如果没有自定义项,这可能吗?谢谢!
2条答案
按热度按时间2admgd591#
解决这个问题的方法:
nafvub8i2#
另一种方法是在调用
to_json
: