pandas.DataFrame.dot
- DataFrame.dot(other)[source]
-
Вычислить матричное произведение между DataFrame и other.
Этот метод вычисляет матричное произведение между DataFrame и значениями Series, DataFrame или массива numpy.
Его также можно вызвать с помощью
self @ other.- Parameters:
-
- other:Series, DataFrame или массив-подобный объект
-
Другой объект для вычисления матричного произведения.
- Returns:
-
- Series или DataFrame
-
Если other — Series, возвращается матричное произведение между self и other в виде Series. Если other — DataFrame или массив numpy, возвращается матричное произведение self и other в виде DataFrame или массива np.
См. также
Series.dot-
Аналогичный метод для Series.
Примечания
Размеры DataFrame и other должны быть совместимы для вычисления матричного произведения. Кроме того, имена столбцов DataFrame и индекс other должны содержать одинаковые значения, так как они будут выровнены перед умножением.
Метод dot для Series вычисляет скалярное произведение, а не матричное произведение.
Примеры
Здесь мы умножаем DataFrame на Series.
>>> df = pd.DataFrame([[0, 1, -2, -1], [1, 1, 1, 1]]) >>> s = pd.Series([1, 1, 2, 1]) >>> df.dot(s) 0 -4 1 5 dtype: int64
Здесь мы умножаем DataFrame на другой DataFrame.
>>> other = pd.DataFrame([[0, 1], [1, 2], [-1, -1], [2, 0]]) >>> df.dot(other) 0 1 0 1 4 1 2 2Обратите внимание, что метод dot дает тот же результат, что и @
>>> df @ other 0 1 0 1 4 1 2 2Метод dot также работает, если other — массив np.
>>> arr = np.array([[0, 1], [1, 2], [-1, -1], [2, 0]]) >>> df.dot(arr) 0 1 0 1 4 1 2 2Обратите внимание, что перестановка объектов не изменяет результат.
>>> s2 = s.reindex([1, 0, 2, 3]) >>> df.dot(s2) 0 -4 1 5 dtype: int64
© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.2.2/reference/api/pandas.DataFrame.dot.html