Проблемы с использованием функции (pyeeg) с pyspark - PullRequest
0 голосов
/ 08 ноября 2019

Я пытаюсь запустить функцию pyeeg с файлом RDD, созданным pyspark. Я хочу получить выходные данные функций Pyegg, используя карту искр и методы сокращения.

Я попытался преобразовать RDD и все значения в плавающее для работы с функцией Pyeeg. Тем не менее, я, кажется, получаю ошибки при запуске этого.

Я инициализировал контекст искры, используя приведенный ниже код sc = SparkContext("local")

, и ниже я перебираю свой ввод и создаю «окна», где я буду использовать в качестве ввода для функции pyegg »bin_power». Я создаю файл rdd из каждого окна, а затем пытаюсь отобразить функцию на этот файл rdd. Однако именно здесь я получаю свою ошибку.

Fs = 128 # sampling rate
Band = [0.5, 4, 7, 12, 30, 100] # EEG bands boundary points
data_signal = all_sdd.map(lambda all_sdd:(all_sdd[0]))
data_len = data_signal.count()
data_time = all_sdd.map(lambda all_sdd:(all_sdd[1]))

while end_point < data_len-1:
        while end_window < data_len-1 and all_sdd.collect()[end_window][1]==all_sdd.collect()[end_window+1][1]:          
            end_window = end_window+1
        segment = data_signal.take(end_window)[start_point:end_window+1]
        rdd_segment = sc.parallelize(segment)
        rdd_segment_float = rdd_segment.map(lambda s: (float(s)))
        psi.rdd= rdd_segment.map(bin_power(rdd_segment_float,Band,Fs))
        #psi.rdd,rir.rdd= rdd_segment.map(bin_power(rdd_segment_float,Band,Fs))

Я запустил это без использования искры и смог получить ожидаемые результаты. Однако, когда я пытаюсь запустить с помощью spark, я получаю эту ошибку.

Ошибка, которую я получаю:

     48 
     49     if n is None:
---> 50         n = a.shape[axis]
     51 
     52     if n < 1:

IndexError: tuple index out of range

Буду признателен за любую помощь или предложения.

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