0

I have this array:

[[330.0, 539.0, 241.0, 387.0],
 [544.0, 754.0, 243.0, 387.0],
 [1190.0, 1279.0, 241.0, 386.0],
 [545.0, 754.0, 393.0, 445.0],
 [1190.0, 1279.0, 99.0, 196.0],
 [544.0, 754.0, 98.0, 195.0],
 [330.0, 539.0, 393.0, 444.0],
 [760.0, 969.0, 143.0, 194.0],
 [760.0, 969.0, 242.0, 391.0],
 [329.0, 539.0, 100.0, 142.0],
 [759.0, 968.0, 492.0, 695.0],
 [975.0, 1185.0, 491.0, 642.0],
 [975.0, 1183.0, 242.0, 387.0],
 [1189.0, 1279.0, 491.0, 642.0],
 [975.0, 1184.0, 99.0, 141.0],
 [55.0, 307.0, 568.0, 626.0],
 [330.0, 527.0, 534.0, 576.0],
 [329.0, 539.0, 586.0, 642.0],
 [55.0, 228.0, 203.0, 240.0],
 [55.0, 227.0, 164.0, 200.0],
 [100.0, 308.0, 0.0, 106.0],
 [545.0, 754.0, 493.0, 549.0],
 [55.0, 274.0, 611.0, 639.0],
 [336.0, 527.0, 501.0, 543.0]]

And this one:

[0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 3, 3, 1, 1, 1, 2, 0, 1, 3]

They are both the same dimention, how can I merge them into a dictionary like

{[330.0, 539.0, 241.0, 387.0]:0, [544.0, 754.0, 243.0, 387.0]:0 etc...}
nbro
  • 15,395
  • 32
  • 113
  • 196
Miguel Santos
  • 1,806
  • 3
  • 17
  • 30

1 Answers1

2

Lists are not hashable, however, tuples can be used:

data1 = [[330.0, 539.0, 241.0, 387.0], [544.0, 754.0, 243.0, 387.0], [1190.0, 1279.0, 241.0, 386.0], [545.0, 754.0, 393.0, 445.0], [1190.0, 1279.0, 99.0, 196.0], [544.0, 754.0, 98.0, 195.0], [330.0, 539.0, 393.0, 444.0], [760.0, 969.0, 143.0, 194.0], [760.0, 969.0, 242.0, 391.0], [329.0, 539.0, 100.0, 142.0], [759.0, 968.0, 492.0, 695.0], [975.0, 1185.0, 491.0, 642.0], [975.0, 1183.0, 242.0, 387.0], [1189.0, 1279.0, 491.0, 642.0], [975.0, 1184.0, 99.0, 141.0], [55.0, 307.0, 568.0, 626.0], [330.0, 527.0, 534.0, 576.0], [329.0, 539.0, 586.0, 642.0], [55.0, 228.0, 203.0, 240.0], [55.0, 227.0, 164.0, 200.0], [100.0, 308.0, 0.0, 106.0], [545.0, 754.0, 493.0, 549.0], [55.0, 274.0, 611.0, 639.0], [336.0, 527.0, 501.0, 543.0]]
data2 = [0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 3, 3, 1, 1, 1, 2, 0, 1, 3]
final_result = {tuple(a):b for a, b in zip(data1, data2)}

Output:

{(330.0, 539.0, 241.0, 387.0): 0, (544.0, 754.0, 243.0, 387.0): 0, (1190.0, 1279.0, 241.0, 386.0): 0, (545.0, 754.0, 393.0, 445.0): 1, (1190.0, 1279.0, 99.0, 196.0): 0, (544.0, 754.0, 98.0, 195.0): 0, (330.0, 539.0, 393.0, 444.0): 1, (760.0, 969.0, 143.0, 194.0): 1, (760.0, 969.0, 242.0, 391.0): 0, (329.0, 539.0, 100.0, 142.0): 0, (759.0, 968.0, 492.0, 695.0): 0, (975.0, 1185.0, 491.0, 642.0): 0, (975.0, 1183.0, 242.0, 387.0): 0, (1189.0, 1279.0, 491.0, 642.0): 0, (975.0, 1184.0, 99.0, 141.0): 0, (55.0, 307.0, 568.0, 626.0): 3, (330.0, 527.0, 534.0, 576.0): 3, (329.0, 539.0, 586.0, 642.0): 1, (55.0, 228.0, 203.0, 240.0): 1, (55.0, 227.0, 164.0, 200.0): 1, (100.0, 308.0, 0.0, 106.0): 2, (545.0, 754.0, 493.0, 549.0): 0, (55.0, 274.0, 611.0, 639.0): 1, (336.0, 527.0, 501.0, 543.0): 3}
Ajax1234
  • 69,937
  • 8
  • 61
  • 102