python中dot函数_Python pandas.DataFrame.dot函数方法的使用

DataFrame.dot(self, other)

计算DataFrame与其他之间的矩阵乘法。

此方法计算DataFrame与其他Series,DataFrame或numpy数组的值之间的矩阵乘积。

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

参数:other : Series,DataFrame或类似数组

用于计算矩阵乘积的另一个对象。

返回:Series或DataFrame

如果其他是Series,则将自我和其他的矩阵产品作为Serie返回。

如果other是DataFrame或numpy.array,

则在np.array的DataFrame中返回self和other的矩阵乘积。

Note

DataFrame和其他的维度必须兼容才能计算矩阵乘法。此外,DataFrame的列名称和其他索引必须包含相同的值,因为它们将在乘法之前对齐。Series的dot方法计算内积,而不是此处的矩阵乘积。

例子

在这里,我们将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

如果其他是np.array,则dot方法也适用>>> 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

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python,GLM(Generalized Linear Model)是一个广泛使用的统计模型,用于建立因变量和一个或多个自变量之间的关系。其,estimate_tweedie_power是一个用于估计Tweedie分布的参数的函数,它可以用于处理非负的连续型数据。 estimate_tweedie_power函数的用法如下: ```python statsmodels.genmod.generalized_linear_model.estimate_tweedie_power(endog, exog, alpha=None, link=None, max_power=2, init=None, verbose=0) ``` 其,参数含义如下: - endog:待拟合的因变量数据,必须是非负的连续型数据。 - exog:自变量数据,可以是一个Numpy数组或一个Pandas DataFrame。 - alpha:Tweedie分布的指数参数,必须是大于等于1且小于2的实数。如果不指定,则默认为1.5。 - link:链接函数,可以是一个字符串(如“log”、“identity”、“sqrt”等)或一个链接函数对象。如果不指定,则默认为“log”链接函数。 - max_power:Tweedie分布的最大幂次。如果不指定,则默认为2。 - init:初始化参数,如果不指定,则默认为根据数据进行初始化。 - verbose:是否输出详细信息。如果为0,则不输出信息;如果为1,则输出部分信息;如果为2,则输出详细信息。 下面是一个使用estimate_tweedie_power函数的例子: ```python import statsmodels.api as sm import numpy as np # 生成数据 np.random.seed(0) nobs = 1000 x = np.random.normal(size=(nobs, 3)) x = sm.add_constant(x) params = np.array([1, 0.5, -0.5, 0.1]) mu = np.dot(x, params) p = 1.5 y = np.random.poisson(mu) # 拟合Tweedie模型 model = sm.GLM(y, x, family=sm.families.Tweedie(var_power=p)) result = model.fit() # 估计Tweedie分布的指数参数 alpha = sm.genmod.generalized_linear_model.estimate_tweedie_power(y, x, alpha=None, link=None, max_power=p, init=None, verbose=0) print(alpha) ``` 上述代码,我们首先生成了一组随机数据,并使用GLM模型拟合了一个Tweedie模型。然后,我们使用estimate_tweedie_power函数估计了Tweedie分布的指数参数alpha。最后,我们将估计得到的alpha值打印出来。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值