numpy

import Numpy as np
arr = [0,1,2,3,4,5,6,7,8,9]
np.max
np.min
np.log
np.arange(0,11) #生成0-10的([0,1,2,3,4,5,6,7,8,9,10])

numpy list 和 python list的不同

#批量设置list中元素 broadcasting
arr[0:5] = 100
out: [100,100,100,100,100,5,6,7,8,9,10]

只看array中部分元素

slice_of_arr = arr[0:6]
out:
arr([0.1.2.3.4.5])

批量设置

slice_of_arr[:] = 99
out:
arr([99,99,99,99,99,99])

注意,此时也更改了原始array中的元素,slice_of_arr只是pointer, 不是一个新的copy. 因为numpy一般都在处理大批量数据,为了节省空间一般默认不是copy

in:arr
out: array([99,99,99,99,99,99,6,7,8,9,10])

如果需要copy则要单独设置

arr_copy = arr.copy()

matrics indexing 2种方式

  1. [row, col] 2. [row][col]
import numpy as np
mat = np.array([[1,2,3],[4,5,6],[7,8,9]])
mat

out:
array([[1, 2, 3],
       [4, 5, 6],
       [7, 8, 9]])
mat[1][1]
out:5
mat[1,1]
out:5

mat[2]
out:array([7, 8, 9])

获取matric里面某一行的部分元素

mat[:2, 1:]

out : array([[2, 3],
       [5, 6]])

CONDITIONAL SELECTION

arr = np.arange(1,11)
arr
out:array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10])

arr > 4
out:
array([False, False, False, False,  True,  True,  True,  True,  True, True])

bool_arr = arr > 4
arr[bool_arr]
out: 
array([ 5,  6,  7,  8,  9, 10])

OR
arr[arr>4]
out:
array([ 5,  6,  7,  8,  9, 10])

创建矩阵

arr = np.arange(0,9).reshape(3,3)
arr

out:
array([[0, 1, 2],
       [3, 4, 5],
       [6, 7, 8]])

np.eye(3)
out:
array([[1., 0., 0.],
       [0., 1., 0.],
       [0., 0., 1.]])

#随机产生一个0-1之间的数字
np.random.rand(1)

#随机产生25个正态分布
np.random.randn(25)



matric 矩阵中的行和列分别相加

mat = np.arange(1,26).reshape(5,5)
mat

out:
array([[ 1,  2,  3,  4,  5],
       [ 6,  7,  8,  9, 10],
       [11, 12, 13, 14, 15],
       [16, 17, 18, 19, 20],
       [21, 22, 23, 24, 25]])

行相加:

mat.sum(axis=0)

out:
array([55, 60, 65, 70, 75])

列相加:

mat.sum(axis=1)

out:
array([ 15,  40,  65,  90, 115])

axis = 0 代表取列数字加总, 1 代表取每行数字加总

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值