Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK. Go to the latest version

qiskit.result.Counts

class Counts(data, time_taken=None, creg_sizes=None, memory_slots=None)

GitHub

A class to store a counts result from a circuit execution.

Build a counts object

Parameters

  • data (dict) –

    The dictionary input for the counts. Where the keys represent a measured classical value and the value is an integer the number of shots with that result. The keys can be one of several formats:

    • A hexadecimal string of the form "0x4a"
    • A bit string prefixed with 0b for example '0b1011'
    • A bit string formatted across register and memory slots. For example, '00 10'.
    • A dit string, for example '02'. Note for objects created with dit strings the creg_sizes``and ``memory_slots kwargs don’t work and hex_outcomes() and int_outcomes() also do not work.
  • time_taken (float) – The duration of the experiment that generated the counts

  • creg_sizes (list) – a nested list where the inner element is a list of tuples containing both the classical register name and classical register size. For example, [('c_reg', 2), ('my_creg', 4)].

  • memory_slots (int) – The number of total memory_slots in the experiment.

Raises

  • TypeError – If the input key type is not an int or string
  • QiskitError – If a dit string key is input with creg_sizes and/or memory_slots

__init__

__init__(data, time_taken=None, creg_sizes=None, memory_slots=None)

Build a counts object

Parameters

  • data (dict) –

    The dictionary input for the counts. Where the keys represent a measured classical value and the value is an integer the number of shots with that result. The keys can be one of several formats:

    • A hexadecimal string of the form "0x4a"
    • A bit string prefixed with 0b for example '0b1011'
    • A bit string formatted across register and memory slots. For example, '00 10'.
    • A dit string, for example '02'. Note for objects created with dit strings the creg_sizes``and ``memory_slots kwargs don’t work and hex_outcomes() and int_outcomes() also do not work.
  • time_taken (float) – The duration of the experiment that generated the counts

  • creg_sizes (list) – a nested list where the inner element is a list of tuples containing both the classical register name and classical register size. For example, [('c_reg', 2), ('my_creg', 4)].

  • memory_slots (int) – The number of total memory_slots in the experiment.

Raises

  • TypeError – If the input key type is not an int or string
  • QiskitError – If a dit string key is input with creg_sizes and/or memory_slots

Methods

__init__(data[, time_taken, creg_sizes, …])Build a counts object
clear()
copy()
fromkeys([value])Create a new dictionary with keys from iterable and values set to value.
get(key[, default])Return the value for key if key is in the dictionary, else default.
hex_outcomes()Return a counts dictionary with hexadecimal string keys
int_outcomes()Build a counts dictionary with integer keys instead of count strings
items()
keys()
most_frequent()Return the most frequent count
pop(k[,d])If key is not found, d is returned if given, otherwise KeyError is raised
popitem()2-tuple; but raise KeyError if D is empty.
setdefault(key[, default])Insert key with a value of default if key is not in the dictionary.
update([E, ]**F)If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
values()

Attributes

bitstring_regex

clear

clear() → None. Remove all items from D.

copy

copy() → a shallow copy of D

fromkeys

fromkeys(value=None, /)

Create a new dictionary with keys from iterable and values set to value.

get

get(key, default=None, /)

Return the value for key if key is in the dictionary, else default.

hex_outcomes

hex_outcomes()

Return a counts dictionary with hexadecimal string keys

Returns

A dictionary with the keys as hexadecimal strings instead of

bitstrings

Return type

dict

Raises

QiskitError – If the Counts object contains counts for dit strings

int_outcomes

int_outcomes()

Build a counts dictionary with integer keys instead of count strings

Returns

A dictionary with the keys as integers instead of bitstrings

Return type

dict

Raises

QiskitError – If the Counts object contains counts for dit strings

items

items() → a set-like object providing a view on D’s items

keys

keys() → a set-like object providing a view on D’s keys

most_frequent

most_frequent()

Return the most frequent count

Returns

The bit string for the most frequent result

Return type

str

Raises

QiskitError – when there is >1 count with the same max counts, or an empty object.

pop

pop(k[, d]) → v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised

popitem

popitem() → (k, v), remove and return some (key, value) pair as a

2-tuple; but raise KeyError if D is empty.

setdefault

setdefault(key, default=None, /)

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

update

update([E, ]**F) → None. Update D from dict/iterable E and F.

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values

values() → an object providing a view on D’s values

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