python-numpy的基本用法03

来源:互联网 发布:西贝柳斯软件配置 编辑:程序博客网 时间:2024/06/05 08:47

python-numpy的基本用法03

线性代数运算

这里写图片描述

这里写图片描述

2、随机数产生

这里写图片描述

这里写图片描述

3、数组合并拆分

这里写图片描述

#coding:utf-8import numpy as npfrom arrayIndexAndSlicing import arrarr1 = np.array([[1, 2, 3], [4, 5, 6]])arr2 = np.array([[7, 8, 9], [10, 11, 12]])print np.concatenate([arr1, arr2], axis = 0)  # 按行连接print np.concatenate([arr1, arr2], axis = 1)  # 按列连接print np.vstack((arr1, arr2)) # 垂直堆叠=按行连接print np.hstack((arr1, arr2)) # 水平堆叠=按列连接print '*' * 50arr = np.arange(25).reshape(5,5)print arrfirst, second, third = np.split(arr, [1,3], axis = 0) #水平拆分print first #[[0 1 2 3 4]]print second# [[ 5  6  7  8  9]#  [10 11 12 13 14]]print third# [[15 16 17 18 19]#  [20 21 22 23 24]]# 堆叠辅助类arr = np.arange(6)arr1 = arr.reshape((3, 2))arr2 = np.random.randn(3, 2)print np.r_[arr1, arr2]# [[ 0.          1.        ]#  [ 2.          3.        ]#  [ 4.          5.        ]#  [ 1.47892319 -0.14980914]#  [-0.63959067  1.56742361]#  [ 1.47719175 -0.72199307]]print 'c_用于按列堆叠'print np.c_[np.r_[arr1, arr2], arr]# c_用于按列堆叠# [[ 0.          1.          0.        ]#  [ 2.          3.          1.        ]#  [ 4.          5.          2.        ]#  [ 1.47892319 -0.14980914  3.        ]#  [-0.63959067  1.56742361  4.        ]#  [ 1.47719175 -0.72199307  5.        ]]print '切片直接转为数组'print np.c_[1:6, -10:-5]# 切片直接转为数组# [[  1 -10]#  [  2  -9]#  [  3  -8]#  [  4  -7]#  [  5  -6]]

4、repet元素

#coding:utf-8import numpy as npimport numpy.random as np_randomprint 'Repeat: 按元素'arr = np.arange(3)print arr.repeat(3) #[0 0 0 1 1 1 2 2 2]print arr.repeat([2, 3, 4]) # 3个元素,分别复制2, 3, 4次。长度要匹配!# [0 0 1 1 1 2 2 2 2]printprint 'Repeat,指定轴'arr = np_random.randn(2, 2)print arr# [[-1.28463953  0.19053388]#  [ 1.10101803 -0.18598974]]print arr.repeat(2, axis = 0) # 按行repeat# [[-1.28463953  0.19053388]#  [-1.28463953  0.19053388]#  [ 1.10101803 -0.18598974]#  [ 1.10101803 -0.18598974]]print arr.repeat(2, axis = 1) # 按列repeat# [[-1.28463953 -1.28463953  0.19053388  0.19053388]#  [ 1.10101803  1.10101803 -0.18598974 -0.18598974]]printprint 'Tile: 参考贴瓷砖'print np.tile(arr, 2)# [[-1.28463953  0.19053388 -1.28463953  0.19053388]#  [ 1.10101803 -0.18598974  1.10101803 -0.18598974]]print np.tile(arr, (2, 3))  # 指定每个轴的tile次数# [[-1.28463953  0.19053388 -1.28463953  0.19053388 -1.28463953  0.19053388]#  [ 1.10101803 -0.18598974  1.10101803 -0.18598974  1.10101803 -0.18598974]#  [-1.28463953  0.19053388 -1.28463953  0.19053388 -1.28463953  0.19053388]#  [ 1.10101803 -0.18598974  1.10101803 -0.18598974  1.10101803 -0.18598974]]
原创粉丝点击