前言
现在到了练习NumPy的最後一天,现在要开始跟资料分析的流程接轨
所以我决定从网路上的开源资料找题库练习!
今天的练习涵盖两个部分:
阵列的数学运算
基础运算(加、减、乘、除、次方)
#先创一个一维阵列
a = np.array([1,2,3,4])
a
'''array([1, 2, 3, 4])'''
# calaulations
print("+ :", a+2) #a+=2
print("- :", a-2)
print("* :", a*2)
print("/ :", a/2)
print("** :",a**2)
'''
+ : [3 4 5 6]
- : [-1 0 1 2]
* : [2 4 6 8]
/ : [0.5 1. 1.5 2. ]
** : [ 1 4 9 16]
'''
也可以使用在多个同样形状的矩阵
b = np.array([1,55,1,55])
print("+ :", a+b) #也等同於 a+=2
print("- :", a-b)
print("* :", a*b)
print("/ :", a/b)
'''
+ : [ 2 57 4 59]
- : [ 0 -53 2 -51]
* : [ 1 110 3 220]
/ : [1. 0.03636364 3. 0.07272727]
'''
sin, cos : np.sin( ) , np.cos( )
print(np.sin(a))
print(np.cos(a))
'''
[ 0.84147098 0.90929743 0.14112001 -0.7568025 ]
[ 0.54030231 -0.41614684 -0.9899925 -0.65364362]
'''
简单线性代数:
a = np.ones((2,3))
print(a)
print("------")
b = np.full((3,2),2)
print(b)
print("------")
# matrix multiply function(.matmul(matrix1, matrix2))
print(np.matmul(a,b)) #也可以使用print(a.dot(b))
'''
[[1. 1. 1.]
[1. 1. 1.]]
------
[[2 2]
[2 2]
[2 2]]
------
[[6. 6.]
[6. 6.]]
'''
基础统计:
#先创一个一维阵列
stats = np.array([[1,2,3],[4,5,6]])
print(stats)
'''
array([[1, 2, 3],
[4, 5, 6]])
'''
# 平均值,最大值,最小值
print("min:",np.min(stats))#会取得整个矩阵的最小值
'''1 '''
# 若是想取得每个row的最小值
print("row basis:",np.min(stats, axis=1))
'''row basis: [1 4]'''
# 同样的方法操作在最大值一次
print("max:", np.max(stats)) #若不指定轴度,将会是整个矩阵的最大值
print("column basis:", np.max(stats, axis=0)) #沿着column取最大值
'''
max: 6
column basis: [4 5 6]
'''
#计算总和
np.sum(stats,axis=1)
'''array([ 6, 15])'''
# sums up by column
np.sum(stats, axis=0)
'''array([5, 7, 9])'''
沿着每个row计算:axis = 1
沿着每个column计算:axis = 0
NumPy应用
今天的题库是利用这个网站上的题库
101 Numpy Exercises for Data Analysis
结语
因为之後的学习历程上都会需要使用到NumPy
现在把基础打好非常重要
NumPy还有很多运算功能跟语法
可以在NumPy的官网上查到
之後要往Pandas的统计分析,Matplotlib作图前进!
>>: Day 26 「一个巨星的诞生」Entity、Repository 与单元测试
前言 昨天简单介绍了当责,今天来看看它的好处,以及实践上可能遇到的问题。 再做点补充 上一篇文章提到...
现在的Unity插件五花八门,现在自己写出一个简单的游戏甚至不用自己写脚本,利用Asset Stor...
昨天介绍完I2S由於我还没写出stm32f030的spi读写Flash的程序,就没付上代码解释了,我...
创建 CLI(command-line interface) 环境前,要先下载 node.js ① ...
前言 Hello 大家好我是 Larry,去年休息一次後今年决定再度参战,这也是我第三次参加铁人赛了...