如何排序火花行对象中的字段?

时间:2018-10-29 08:46:52

标签: apache-spark pyspark

一旦我们在pyspark中创建一个行对象,该行中的字段将按字母顺序排列:

>> my_row = Row(rate=0.1, height=1)
>> print(my_row)
>> Row(height=1, rate=0.1)

如何按照我想要的方式对字段进行排序,例如:Row(rate=0.1, height=1)

1 个答案:

答案 0 :(得分:0)

创建具有“自定义”字段顺序的行的最简单方法(无需创建数据框)如下:

fields = ["rate", "height"] # in our desired order
values = {"height": 1, "rate": 0.1}

my_row_class = Row(*fields) # create a row class first
my_row = my_row_class(*[values[key] for key in fields])

>> print my_row
>> Row(rate=0.1, height=1)