dimod.Response.update

Response.update(*other_responses)[source]

Add values of other responses to the response.

Parameters:*other_responses – (Response): Additional responses from which to add values. Any number of additional response objects, separated by commas, can be specified. Responses must have matching sample_matrix dimensions, data_vector keys, and variable labels.

Examples

This example updates a response with values from two other responses.

>>> import dimod
>>> samples = [[0, 1], [1, 0]]
>>> energies = [0.0, 1.0]
>>> response = dimod.Response.from_matrix(samples, {'energy': energies})
>>> samples1 = [[0, 0], [1, 1]]
>>> energies1 = [0.25, 1.25]
>>> response1 = dimod.Response.from_matrix(samples1, {'energy': energies1})
>>> samples2 = [[1, 0], [0, 1]]
>>> energies2 = [0.5, 1.75]
>>> response2 = dimod.Response.from_matrix(samples2, {'energy': energies2})
>>> len(response)
2
>>> for i in response.data():         
...     print(i)
...
Sample(sample={0: 0, 1: 1}, energy=0.0)
Sample(sample={0: 1, 1: 0}, energy=1.0)
>>> response.update(response1, response2)
>>> len(response)
6
>>> for energy in response.data(fields=['energy'], name='UpdatedEnergy'):
...     print(energy)
...
UpdatedEnergy(energy=0.0)
UpdatedEnergy(energy=0.25)
UpdatedEnergy(energy=0.5)
UpdatedEnergy(energy=1.0)
UpdatedEnergy(energy=1.25)
UpdatedEnergy(energy=1.75)