pandas.DataFrame.at

property DataFrame.at

Access a single value for a row/column label pair.

Similar to loc, in that both provide label-based lookups. Use at if you only need to get or set a single value in a DataFrame or Series.

Raises
KeyError
  • If getting a value and ‘label’ does not exist in a DataFrame or

    Series.

ValueError
  • If row/column label pair is not a tuple or if any label from

    the pair is not a scalar for DataFrame.

  • If label is list-like (excluding NamedTuple) for Series.

See also

DataFrame.at

Access a single value for a row/column pair by label.

DataFrame.iat

Access a single value for a row/column pair by integer position.

DataFrame.loc

Access a group of rows and columns by label(s).

DataFrame.iloc

Access a group of rows and columns by integer position(s).

Series.at

Access a single value by label.

Series.iat

Access a single value by integer position.

Series.loc

Access a group of rows by label(s).

Series.iloc

Access a group of rows by integer position(s).

Notes

See Fast scalar value getting and setting for more details.

Examples

>>> df = pd.DataFrame([[0, 2, 3], [0, 4, 1], [10, 20, 30]],
...                   index=[4, 5, 6], columns=['A', 'B', 'C'])
>>> df
    A   B   C
4   0   2   3
5   0   4   1
6  10  20  30

Get value at specified row/column pair

>>> df.at[4, 'B']
2

Set value at specified row/column pair

>>> df.at[4, 'B'] = 10
>>> df.at[4, 'B']
10

Get value within a Series

>>> df.loc[5].at['B']
4