Как условно заменить значения в списке списков в python

DJ_Stuffy_K спросил: 13 октября 2017 в 07:02 в: python

Я новый питон.
У меня есть два списка списков, подобных этому:

A = List[List[float,float]]   
B = List[List[float,float]]  

оба разных размераEx:

A has [time, value]  
B has [start_time, end_time]  A = [[0.0,10.0] , [1.0,10.0], [2.0,10.0], [3.0,10.0], [4.0,10.0],  [5.0,10.0],  [6.0,10.0]]
B = [[0.0,2.0], [5.0,6.0]]     

Я пытаюсь сделать следующее:
если у A есть время, которого нет в B, я должен сделать соответствующее "значение" в A равным нулю.

Таким образом, вывод будет :

[[0.0,10.0] , [1.0,10.0], [2.0,10.0], [3.0,0.0], [4.0,0.0],  [5.0,10.0],  [6.0,10.0]]

, т.е. если временной сегмент в B не имеет соответствующего значения времени, присутствующего в A, значение, соответствующее этому времени, должно быть сделано равным нулю. В этом случае значения от 2 до 5 находятся в B, поэтому значения партнеров "3" и "4" в A устанавливаются в нули.

Скажите, пожалуйста, как это сделать. У меня есть см. здесь: Python - как изменить значения в списке списков? и Список списков в массив numpy

Итак, одна идея, которую я получил, состояла в том, чтобы преобразовать B в один список, а затем сравнить значения из AA и A. Однако я не добился большого прогресса.

AA = numpy.hstack(B) # for getting array of times
for i in 1: len(AA):
     if (AA[i]==A[

0 ответов