Numpy 学习之矩阵、函数、二元运算及数组读写

matrix.I,表示matrix的逆矩阵

print(np.mat(a).I)

利用分块创造新矩阵

a = np.array([[4, 8],

[5, 19]])

b = np.array([[11, 89],

[49, 29]])

print(np.bmat(‘a, b;b, a’))

函数


–coding:utf-8–

import numpy as np

import matplotlib.pyplot as plt

“”"

一般函数

“”"

正无穷

print(‘正无穷:’, np.inf)

负无穷

print(‘负无穷:’, -np.inf)

非法值

print(‘非法值:’, np.nan)

“”"

向量化函数

“”"

vectorize(function_name),将函数向量化,产生一个新函数

x = np.array([3, 54, 89])

def sinc(x):

if x == 0.0:

return 1.0

else:

y = np.pi * x

return np.sin(y) / y

sinc1 = np.vectorize(sinc)

print(‘向量化:’, sinc1(x))

x = np.linspace(-10, 10, 50)

plt.plot(x, sinc1(x))

plt.show()

二元运算


四则运算对应函数

| 运算符 | 对应函数 |

| :-: | :-: |

| a + b | add(a, b) |

| a - b | subtract(a, b) |

| a * b | multiply(a, b) |

| a / b | divide(a, b) |

| a ** b | power(a, b) |

| a % b | remainder(a,b) |

比较与逻辑运算

| 运算符 | 对应函数 |

| :-: | :-: |

| == | equal |

| != | not_equal |

| > | greater |

| >= | greater_equal |

| < | less |

| <= | less_equal |

| & | bitwise_and |

| / | bitwise_or |

| ^ | bitwise_xor |

| ~ | invert |

| >> | right_shift |

| << | left_shift |

ufunc对象


–coding:utf-8–

import numpy as np

“”"

ufunc对象

“”"

reduce方法

op.reduce(a),将op沿着某个轴应用,使得数组啊的维数降低一维

a = np.array([3, 4, 5, 6, 9])

print(np.add.reduce(a))

print(np.logical_or.reduce(a))

accumulate方法

op.accumulate(a),看成保存reduce每一步的结果所形成的数组

print(np.add.accumulate(a))

print(np.logical_or.accumulate(a))

reduceat方法

op.reduceat(a, indices),将操作符运用到指定的下标上,返回一个与indices大小相同的数组

indices = np.array([0,3])

print(np.add.reduceat(a, indices))

outer方法

op.outer(a, b),对a中每个元素,将op运用到它与b的每一个元素上所得到的结果

b = np.array([2, 3, 4])

print(np.add.outer(a, b))

print(np.logical_or.outer(a, b))

数组读写


–coding:utf-8–

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!**

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值