10月14日我的学习心得与个人理解
索引
在一维数组中,可以使用列表的所有方法,并且还可以额外使用间断索引(花式索引)和逻辑索引
在二维数组中,位置索引必须写成[rows,cols]的形式,rows表示行索引,cols表示列索引
如果需要获取二维数组所有行或列元素,需要在对应的行索引或列索引加入英文冒号
age = np.array([11,12,13,14,15,16])

间断索引(花式索引)
age[[0,3,5]] 花式索引age的0,3,5号元素
age < 18 输出为布尔值
age[age < 18] 输出符合条件的元素

运算符
greater
equal
less
数学运算符
+ 数组对应元素的加和
- 数组对应元素的差
/ 数组对应元素的乘积
% 数组对应元素商的余数
// 数组对应元素商的整除数
** 数组对应元素的幂指数
比较运算符
> 等价np.greater(arr1,arr2)判断arr1元素是否大于arr2元素
>= 等价np.greater_equal(arr1,arr2)判断arr1元素是否大于等于arr2元素
< 等价np.less(arr1,arr2)判断arr1元素是否小于arr2元素
<= 等价np.less_equal(arr1,arr2)判断arr1元素是否小于等于arr2元素
== 等价np.equal(arr1,arr2)判断arr1元素是否等于arr2元素
!= 等价np.not_equal(arr1,arr2)判断arr1元素是否不等于arr2元素
函数
调用函数时有以下2种方法
np.函数名(data)
data.函数名()
np.round(arr) 对各个元素进行四舍五入
np.sqrt(arr) 计算各个元素的算术平方根
np.square(arr) 计算各元素的平方值
np.exe(arr) 计算以e为底的指数
np.power(arr) 计算各元素的指数
np.log2(arr) 计算以2为底各元素的对数
np.log10(arr) 计算以10为底各元素的对数
np.log(arr) 计算以e为底各元素的对数

np.min(arr,axis) 按照轴的方向计算最小值
np.max(arr,axis) 按照轴的方向计算最大值
np.mean(arr,axis) 按照轴的方向计算平均值
np.median(arr,axis) 按照轴的方向计算中位数
np.sum(arr,axis) 按照轴的方向计算和
np.std(arr,axis) 按照轴的方向计算标准差
np.var(arr,axis) 按照轴的方向计算方差
axis = 0时,计算数组各列的统计值
axis = 0时,计算数组各行的统计值

Sum=[]
for row in range(4):
Sum.append(np.sum(shuzu[row,:]))
计算每一行的和
Avg = []
for col i range(5):
Avg.append(np.mean(shuzu[:,col]))
arr2.sum(axis = 1) 等价np.sum(arr,axis = 1)
np.mean(arr,axis = 0) 等价arr.mean(axis = 0)
基础函数
add 将数组中对应元素相加
subtract 从第一个数组中减去第二个数组中的元素
multiply 数组元素相乘
divide,floor_divide 除法或向下圆整除法(舍弃余数)
随机数
numpy中的random子模块 np.random
rand 给定形状产生随机数组
randint 给定形状产生随机整数
choice 给定形状产生随机选择
shuffle 与random.shuffle相同
uniform 给定形状产生随机数组(随机均匀分布)
normal 随机正态分布

正规赌场的结局案例
money = 10000
先利用uniform生成1500次0到1之间的随机均匀分布
pgs = [money]
r = np.random.uniform(0,1,1500)
for time in r:
if time < 0.5:
money -= 8
else:
money += 8
pgs.append(money)
import matplotlib.pyplot as plt
plt.plot(range(1501),pgs)
plt.show()

查看提示信息
方式1 方法名? 执行查看
方法2 方法名 光标停留在后面先按shift键不松开再按tab键

浙公网安备 33010602011771号