Sum () и count () не работают вместе с agg в pyspark2 - PullRequest
0 голосов
/ 03 мая 2020

Я использую json файл данных «order_items», и данные выглядят как

{“order_item_id”:1,“order_item_order_id”:1,“order_item_product_id”:957,“order_item_quantity”:1,“order_item_subtotal”:299.98,“order_item_product_price”:299.98}
{“order_item_id”:2,“order_item_order_id”:2,“order_item_product_id”:1073,“order_item_quantity”:1,“order_item_subtotal”:199.99,“order_item_product_price”:199.99}
{“order_item_id”:3,“order_item_order_id”:2,“order_item_product_id”:502,“order_item_quantity”:5,“order_item_subtotal”:250.0,“order_item_product_price”:50.0}
{“order_item_id”:4,“order_item_order_id”:2,“order_item_product_id”:403,“order_item_quantity”:1,“order_item_subtotal”:129.99,“order_item_product_price”:129.99}

orders = spark.read.json("/user/data/retail_db_json/order_items")

Я получаю сообщение об ошибке при выполнении следующей команды.

orders.where("order_item_order_id in( 2,4,5,6,7,8,9,10) ").groupby(“order_item_order_id”).agg(sum(“order_item_subtotal”),count()).orderBy(“order_item_order_id”).show()

TypeError : неподдерживаемые типы операндов для +: 'int' и 'str'

Я не уверен, почему я получаю ... Все значения столбцов являются строковыми. Любое предложение ?

1 Ответ

0 голосов
/ 03 мая 2020

Приведите столбец к типу int. Невозможно применить методы агрегирования к строковым типам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...