Exercise9-Numpy

Premise:

Premise

分析:

要生成两个矩阵,A为高斯(正态分布)矩阵,可以numpy.random.normal获得;B为Toeplitz矩阵,可用scipy.linalg 中的toeplitz获得。

内置函数等介绍:

  1. numpy.random.normal(loc=0.0, scale=1.0, size=None)
    对应于高斯分布的概率密度函数,第一,二个参数分别为均值和标准差,最后为输出的形状。例如numpy.random.normal(loc=0, scale=1, size=(2,3))正态分布的矩阵。

  2. scipy.linalg.toeplitz(c, r=None)
    用于生成toeplitz矩阵,第一个参数为矩阵的第一列,第二个为矩阵的第一行(默认为c的转置)。

代码实现:

import numpy as np
import time
from scipy.linalg import toeplitz
#N(0,1)gaussian
mu,sigma = 0,1 #mean and standard deviation
n,m = 200,500 #the dimension of A
A = np.random.normal(loc=mu, scale=sigma, size=(n,m))
c = list(range(1,m+1))
B = toeplitz(c,c)

Exercise 9.1: Matrix operations:

9-1

分析:

矩阵之间的简单运算,使用简单的运算符或numpy的相关方法即可实现,I为单位矩阵,可用方法numpy.eye获得。

内置函数等介绍:

  1. 基本运算
    获得矩阵A的转置:A.T
    共轭矩阵:A.I
    矩阵相加减:A+A A-A
    逆矩阵:numpy.linalg.inv(a)
    矩阵相乘:a.dot(b.T) numpy.dot(a,b) a*b
    求迹: np.trace(a)
  2. 生成对角矩阵
    numpy.eye(N,M=None, k=0, dtype=(type ‘float’))
    第一个参数为输出方阵(行数=列数)的规模,即行数或列数,第二个参数k默认情况下输出的是对角线全“1”,其余全“0”的方阵,如果k为正整数,则在右上方第k条对角线全“1”其余全“0”,k为负整数则在左下方第k条对角线全“1”其余全“0”。例如:
>>> np.eye(2, dtype=int)
array([[1, 0],
       [0, 1]])
>>> np.eye(3, k=1)
array([[ 0.,  1.,  0.],
       [ 0.,  0.,  1.],
       [ 0.,  0.,  0.]])

代码实现:

其中函数以lambda为2调用

#9.1
print("---9.1:Matrix operations")
print("calculate A+A:")
dA = A+A
print(dA)
print("calculate AA(T):")
mA = np.dot(A,A.T)
print(mA)
print("calculate A(T)A:")
mA2 = np.dot(A.T,A)
print(mA2)
print("calculate AB:")
mAB = np.dot(A,B)
print(mAB)

def func(A, B, lamb):
    C = B-lamb*(np.eye(m))
    print(np.dot(A,C))
print("calculate A(B-I) for  = 2:")
func(A,B,2)

Exercise 9.2: Solving a linear system

这里写图片描述

分析:

numpy.linalg中的函数solve可以求解形如 Ax = b

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
import shap explainer = shap.TreeExplainer(reg) shap_values = explainer.shap_values(X_wrapper) shap.summary_plot(shap_values, X_wrapper,show=False) plt.title('SHAP Summary Plot') plt.xlabel('SHAP Value') plt.ylabel('Feature') plt.tight_layout() plt.savefig('E:/exercise/Nano/fig/shap_bay.pdf'),运行这段代码结果报错“initialization of _internal failed without raising an exception”,这个错误通常是由于Shap库的版本不兼容或缺少依赖项导致的。要解决这个问题,按照以上步骤操作后仍然报错“ERROR: Could not install packages due to an OSError: [WinError 5] 拒绝访问。: 'G:\\Anaconda\\Lib\\site-packages\\~~mpy\\.libs\\libopenblas64__v0.3.21-gcc_10_3_0.dll' Consider using the `--user` option or check the permissions. Requirement already satisfied: shap in g:\anaconda\lib\site-packages (0.42.1) Requirement already satisfied: scikit-learn in g:\anaconda\lib\site-packages (from shap) (0.24.2) Requirement already satisfied: numba in g:\anaconda\lib\site-packages (from shap) (0.54.1) Requirement already satisfied: scipy in g:\anaconda\lib\site-packages (from shap) (1.7.1) Requirement already satisfied: numpy in g:\anaconda\lib\site-packages (from shap) (1.24.4) Requirement already satisfied: tqdm>=4.27.0 in g:\anaconda\lib\site-packages (from shap) (4.62.3) Requirement already satisfied: packaging>20.9 in g:\anaconda\lib\site-packages (from shap) (21.0) Requirement already satisfied: cloudpickle in g:\anaconda\lib\site-packages (from shap) (2.0.0) Requirement already satisfied: slicer==0.0.7 in g:\anaconda\lib\site-packages (from shap) (0.0.7) Requirement already satisfied: pandas in g:\anaconda\lib\site-packages (from shap) (1.3.4) Requirement already satisfied: pyparsing>=2.0.2 in g:\anaconda\lib\site-packages (from packaging>20.9->shap) (3.0.4) Requirement already satisfied: colorama in g:\anaconda\lib\site-packages (from tqdm>=4.27.0->shap) (0.4.6) Collecting numpy Downloading numpy-1.20.3-cp39-cp39-win_amd64.whl (13.7 MB) Requirement already satisfied: setuptools in g:\anaconda\lib\site-packages (from numba->shap) (58.0.4) Requirement already satisfied: llvmlite<0.38,>=0.37.0rc1 in g:\anaconda\lib\site-packages (from numba->shap) (0.37.0) Requirement already satisfied: pytz>=2017.3 in g:\anaconda\lib\site-packages (from pandas->shap) (2021.3) Requirement already satisfied: python-dateutil>=2.7.3 in g:\anaconda\lib\site-packages (from pandas->shap) (2.8.2) Requirement already satisfied: six>=1.5 in g:\anaconda\lib\site-packages (from python-dateutil>=2.7.3->pandas->shap) (1.16.0) Requirement already satisfied: threadpoolctl>=2.0.0 in g:\anaconda\lib\site-packages (from scikit-learn->shap) (2.2.0) Requirement already satisfied: joblib>=0.11 in g:\anaconda\lib\site-packages (from scikit-learn->shap) (1.1.0) Installing collected packages: numpy Attempting uninstall: numpy Found existing installation: numpy 1.24.4 Uninstalling numpy-1.24.4: Successfully uninstalled numpy-1.24.4”,应该如何解决?
07-23

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值