Более элегантный способ биннинга - PullRequest
0 голосов
/ 17 июня 2020

Мне нужно собрать некоторые данные, это занимает слишком много времени с моим кодированием пещерного человека, поэтому мне нужна некоторая оптимизация. У меня есть временной массив и массив величин, мне нужно хранить несколько значений величин в соответствии с их временными данными. Например, объедините значения величины между 0-2 se c, затем 2-4,4-6 и так далее. Мой код:

   for i in range(time_values.shape[0]): ----> around 1000, so 1000+ elif statement
      if (time[i] > 0 ) and ( 0.001 > time[i]):
        bins['bin_'+str( 0 )].append(magnitude[i])
      elif (time[i] > 0.001 ) and ( 0.002 > time[i]):
        bins['bin_'+str( 1 )].append(magnitude[i])
      elif (time[i] > 0.002 ) and ( 0.003 > time[i]):
        bins['bin_'+str( 2 )].append(magnitude[i])
             ...
             ...
             ...

Как видите, я использовал словарь для сортировки данных, думая, что было бы проще создать около 1000 пустых массивов bin. Но я начинаю сожалеть об этом, так как это длилось очень долго. Есть ли более быстрый способ выполнить эту работу?

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