Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.

RunnerResult

class RunnerResult(backend_name, backend_version, qobj_id, job_id, success, results, date=None, status=None, header=None, **kwargs)

GitHub

Bases: qiskit.result.result.Result, qiskit.providers.ibmq.runtime.program.result_decoder.ResultDecoder

Result class for Qiskit Runtime program circuit-runner.


Methods

data

RunnerResult.data(experiment=None)

Get the raw data for an experiment.

Note this data will be a single classical and quantum register and in a format required by the results schema. We recommend that most users use the get_xxx method, and the data will be post-processed for the data type.

Parameters

experiment (str or QuantumCircuit orSchedule or int or None) – the index of the experiment. Several types are accepted for convenience:: * str: the name of the experiment. * QuantumCircuit: the name of the circuit instance will be used. * Schedule: the name of the schedule instance will be used. * int: the position of the experiment. * None: if there is only one experiment, returns it.

Returns

A dictionary of results data for an experiment. The data depends on the backend it ran on and the settings of meas_level, meas_return and memory.

QASM backends return a dictionary of dictionary with the key ‘counts’ and with the counts, with the second dictionary keys containing a string in hex format (0x123) and values equal to the number of times this outcome was measured.

Statevector backends return a dictionary with key ‘statevector’ and values being a list[list[complex components]] list of 2^num_qubits complex amplitudes. Where each complex number is represented as a 2 entry list for each component. For example, a list of [0.5+1j, 0-1j] would be represented as [[0.5, 1], [0, -1]].

Unitary backends return a dictionary with key ‘unitary’ and values being a list[list[list[complex components]]] list of 2^num_qubits x 2^num_qubits complex amplitudes in a two entry list for each component. For example if the amplitude is [[0.5+0j, 0-1j], …] the value returned will be [[[0.5, 0], [0, -1]], …].

The simulator backends also have an optional key ‘snapshots’ which returns a dict of snapshots specified by the simulator backend. The value is of the form dict[slot: dict[str: array]] where the keys are the requested snapshot slots, and the values are a dictionary of the snapshots.

Return type

dict

Raises

QiskitError – if data for the experiment could not be retrieved.

decode

classmethod RunnerResult.decode(data)

Decoding for results from Qiskit runtime jobs.

Return type

RunnerResult

from_dict

classmethod RunnerResult.from_dict(data)

Create a new ExperimentResultData object from a dictionary.

Parameters

data (dict) – A dictionary representing the Result to create. It will be in the same format as output by to_dict().

Returns

The Result object from the input dictionary.

Return type

Result

get_counts

RunnerResult.get_counts(experiment=None)

Get the histogram data of an experiment.

Parameters

experiment (str or QuantumCircuit orSchedule or int or None) – the index of the experiment, as specified by data([experiment]).

Returns

a dictionary or a list of dictionaries. A dictionary has the counts for each qubit with the keys containing a string in binary format and separated according to the registers in circuit (e.g. 0100 1110). The string is little-endian (cr[0] on the right hand side).

Return type

dict[str, int] or list[dict[str, int]]

Raises

QiskitError – if there are no counts for the experiment.

get_memory

RunnerResult.get_memory(experiment=None)

Get the sequence of memory states (readouts) for each shot The data from the experiment is a list of format [‘00000’, ‘01000’, ‘10100’, ‘10100’, ‘11101’, ‘11100’, ‘00101’, …, ‘01010’]

Parameters

experiment (str or QuantumCircuit orSchedule or int or None) – the index of the experiment, as specified by data().

Returns

Either the list of each outcome, formatted according to registers in circuit or a complex numpy np.ndarray with shape:

meas_levelmeas_returnshape
0singlenp.ndarray[shots, memory_slots, memory_slot_size]
0avgnp.ndarray[memory_slots, memory_slot_size]
1singlenp.ndarray[shots, memory_slots]
1avgnp.ndarray[memory_slots]
2memory=Truelist

Return type

List[str] or np.ndarray

Raises

QiskitError – if there is no memory data for the circuit.

get_quasiprobabilities

RunnerResult.get_quasiprobabilities(experiment=None)

Get quasiprobabilites associated with one or more experiments.

Parameters

experiment (Union[int, List, None]) – Indices of experiments to grab quasiprobabilities from.

Return type

Union[QuasiDistribution, List[QuasiDistribution]]

Returns

A single distribution or a list of distributions.

Raises

QiskitError – If experiment result doesn’t contain quasiprobabilities.

get_statevector

RunnerResult.get_statevector(experiment=None, decimals=None)

Get the final statevector of an experiment.

Parameters

  • experiment (str or QuantumCircuit orSchedule or int or None) – the index of the experiment, as specified by data().
  • decimals (int) – the number of decimals in the statevector. If None, does not round.

Returns

list of 2^num_qubits complex amplitudes.

Return type

list[complex]

Raises

QiskitError – if there is no statevector for the experiment.

get_unitary

RunnerResult.get_unitary(experiment=None, decimals=None)

Get the final unitary of an experiment.

Parameters

  • experiment (str or QuantumCircuit orSchedule or int or None) – the index of the experiment, as specified by data().
  • decimals (int) – the number of decimals in the unitary. If None, does not round.

Returns

list of 2^num_qubits x 2^num_qubits complex

amplitudes.

Return type

list[list[complex]]

Raises

QiskitError – if there is no unitary for the experiment.

to_dict

RunnerResult.to_dict()

Return a dictionary format representation of the Result

Returns

The dictionary form of the Result

Return type

dict

Was this page helpful?
Report a bug or request content on GitHub.