当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyspark Series.dot用法及代码示例


本文简要介绍 pyspark.pandas.Series.dot 的用法。

用法:

Series.dot(other: Union[Series, pyspark.pandas.frame.DataFrame]) → Union[int, float, bool, str, bytes, decimal.Decimal, datetime.date, datetime.datetime, None, pyspark.pandas.series.Series]

计算 Series 和 other 列之间的点积。

此方法计算 Series 与另一个 Series 之间的点积,或者 Series 与 DataFrame 的每一列之间的点积。

它也可以在 Python >= 3.5 中使用 self @ other 调用。

注意

当两个 Series 的索引未对齐时,此 API 与 pandas 略有不同。为了与 pandas 匹配,它需要读取整个数据,例如计数。 pandas 引发异常;然而,pandas-on-Spark 只是通过忽略与 NaN 的不匹配来继续和执行。

>>> pdf1 = pd.Series([1, 2, 3], index=[0, 1, 2])
>>> pdf2 = pd.Series([1, 2, 3], index=[0, 1, 3])
>>> pdf1.dot(pdf2)  
...
ValueError: matrices are not aligned
>>> psdf1 = ps.Series([1, 2, 3], index=[0, 1, 2])
>>> psdf2 = ps.Series([1, 2, 3], index=[0, 1, 3])
>>> psdf1.dot(psdf2)  
5

参数

other系列,数据帧。

另一个计算其列的点积的对象。

返回

标量,系列

如果 other 是 Series,则返回 Series 和 other 的点积,如果 other 是 DataFrame,则返回 Series 和 other 的每一行的点积。

注意

如果 other 是 Series 或 DataFrame,则 Series 和 other 必须共享相同的索引。

例子

>>> s = ps.Series([0, 1, 2, 3])
>>> s.dot(s)
14
>>> s @ s
14
>>> psdf = ps.DataFrame({'x': [0, 1, 2, 3], 'y': [0, -1, -2, -3]})
>>> psdf
   x  y
0  0  0
1  1 -1
2  2 -2
3  3 -3
>>> with ps.option_context("compute.ops_on_diff_frames", True):
...     s.dot(psdf)
...
x    14
y   -14
dtype: int64

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.pandas.Series.dot。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。