Как получить строку без заголовка из dataframe в список с pyspark - PullRequest
0 голосов
/ 22 февраля 2019

Я получаю эти данные из файла CSV, и мне нужно отправить эти данные на сервер.Но мне нужно просто значение из этого списка.

{1: Row(Moid=1, Tripid='1', Tstart='2007-05-27', Tend='2007-05-27 08:36:47.846', Xstart='12785', Ystart='1308', Xend='12785', Yend='1308'), 2: Row(Moid=2, Tripid='10', Tstart='2007-05-27', Tend='2007-05-28 08:52:53.673', Xstart='9716', Ystart='-55', Xend='9716', Yend='-55')}

Я хочу получить это

{ (1,  1, 2007-05-27, 2007-05-2708:36:47.846 , 12785, 1308, 12785, 1308)
  (2, 10, 2007-05-27, 2007-05-2808:52:53.673 ,  9716,  -55,  9716,  -55)

1 Ответ

0 голосов
/ 22 февраля 2019

Вы можете использовать rdd и функцию map, которая преобразует строку в кортеж.Я просто использовал ваши первые 3 значения для примера реализации:

df = spark.createDataFrame([(1,"1",'2007-05-27'),(2,"10", "2007-05-27")], ['moid',"tripid","tstart"])
print df.rdd.map(lambda r: tuple(r)).collect()

Вывод будет список кортежей:

[(1, u'1', u'2007-05-27'), (2, u'10', u'2007-05-27')]
...