以np.sum()为例讲解参数axis

1. 理解参数axis

在这里插入图片描述
axis中文翻译为“轴”,可以说很形象了。
先看个数组:
数组arr
一层[]表示一维,计数时从外往里计算,所以对于以上数组第一维(即第一个[])里有两个元素,然后遇到第二个[](即第二维),第二维里分别有3个元素,最后第三维里分别有4个元素。
经过分析,也许你能体会axis“轴”的含义了,其实就是从外到内的[]。
打印出来验证一下:
三个维度取值

2. 参数axis对于np.sum结果的影响

由上知:以上数组共有三个维度,所以axis可取0,1,2。访问某个数组某个元素,可以采用arr[n0][n1][n2]表示,其中n0的取值是0,1,代表第一个索引;n1的取值是0,1,2,代表第二个索引;n2的取值是0,1,2,3,代表第三个索引。其实就是某一维度里有多少个元素。

2.1 axis = 0

axis=0表示在第一维度进行累加计算,数学表达式为:
sum = arr[0][n1][n2] + arr[1][n1][n2]
其中n1,n2取遍所有可取值。
在这里插入图片描述
在这里插入图片描述
其实sum结果就是n1*n2维。

2.2 axis = 1

axis=1表示在第二维度进行累加计算,数学表达式为:
sum = arr[n0][0][n2] + arr[n0][1][n2] + arr[n0][2][n2]
其中n0,n2取遍所有可取值。
在这里插入图片描述
在这里插入图片描述
其实sum结果就是n0*n2维。

2.3 axis = 2

axis=2表示在第三维度进行累加计算,数学表达式为:
sum = arr[n0][n1][0] + arr[n0][n1][1] + arr[n0][n1][2] + arr[n0][n1][3]
其中n0,n1取遍所有可取值。
在这里插入图片描述
在这里插入图片描述
其实sum结果就是n0*n1维。

  • 28
    点赞
  • 67
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
这段代码使用numpy库进行主成分回归分析,并得到回归方程的斜率和截距。 以下是用R语言实现这段代码,并解释各部分代码含义及整体流程的代码: ```R # 安装和加载相关包 install.packages("pls") library(pls) # 假设已经定义好pca_coef和y,即主成分系数和因变量向量 # 解释主成分系数,得到权重 pca_weight <- sqrt(colSums(pca_coef^2)) # 计算回归方程的斜率和截距 slope <- sum(pca_coef*pca_weight) / sum(pca_weight^2) intercept <- mean(y) - slope * mean(pca_coef) ``` 解释各部分代码含义: - `install.packages("pls")`:安装pls包,用于进行主成分回归分析。 - `library(pls)`:加载pls包。 - `pca_weight <- sqrt(colSums(pca_coef^2))`:计算主成分系数的权重,即每个主成分在回归方程中的权重。使用`colSums()`计算每列的和,然后使用`sqrt()`求平方根,得到每个主成分的权重。 - `slope <- sum(pca_coef*pca_weight) / sum(pca_weight^2)`:计算回归方程的斜率。将主成分系数和主成分权重相乘得到每个主成分在回归方程中的贡献,然后将所有主成分的贡献加总,除以所有主成分的权重平方和,得到回归方程的斜率。 - `intercept <- mean(y) - slope * mean(pca_coef)`:计算回归方程的截距。使用`mean()`计算因变量向量y和主成分系数pca_coef的均值,然后将斜率和主成分系数均值相乘得到回归方程的截距。 整体流程分析: 这段代码的整体流程为:首先,通过主成分分析得到主成分系数;然后,根据主成分系数计算每个主成分在回归方程中的权重;最后,将主成分系数和主成分权重相乘得到每个主成分在回归方程中的贡献,然后将所有主成分的贡献加总,除以所有主成分的权重平方和,得到回归方程的斜率。同时,也计算了回归方程的截距。 需要注意的是,这段代码只是计算了回归方程的斜率和截距,并没有进行主成分回归分析的完整流程,因此需要在此基础上进一步完善主成分回归模型。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值