Numpy常用函数

来源:互联网 发布:服装设计用什么软件 编辑:程序博客网 时间:2024/05/29 16:45

import numpy as np
B=np.arange(3)
print(B)
print(np.exp(B))
print(np.sqrt(B))

exp的意思 e的多少次幂 e^0=1 e^1=2.71828.. e^2=7.389…

sqrt=开方

[0 1 2]
[ 1. 2.71828183 7.3890561 ]
[ 0. 1. 1.41421356]

np.floor 向下取整
.ravel() 矩阵变成向量的形式
.shape() 指定shape 变成矩阵
.T 转置
这里写图片描述
np.hstack() 按行拼接矩阵
这里写图片描述

np.vstack() 按列拼接矩阵
这里写图片描述

这里写图片描述
这里写图片描述
hsplit(a,3) 分割 a三刀
hsplit(a,(3,4)) 分割 a 在索引3、4切一刀
vsplit(a,3) 分割 a按列 切三刀

这里写图片描述
b=a 这里是类似C++ b=&a
改变b,a也会发生改变
在内存中他们类似c的指针 他们指向同一块内存

浅复制
这里写图片描述
.view()
但是!!!!!!
这里写图片描述
改变了c的值 a的值也发生了变化!!
改变了c的形态 a的形态不发生变化!1
他们的id不一样 他们不是共享一块内存
但是他们共享同一组值,当组值发生变化时,他们的值都会发生变化

深复制
改哪一个都互不影响
这里写图片描述

这里写图片描述
argmax(axis=0) 在每列中最大值的索引值
argmax(axis=1) 在每行中最大值的索引值

这里写图片描述
np.tile()
(a,(1,4)) a是复制什么 (x,y) 复制几倍

这里写图片描述
np.argsort() 返回的是排序好的索引值

np.insert()
numpy.insert(arr, obj, values, axis=None)[source]

a = np.array([[1, 1], [2, 2], [3, 3]])
a
array([[1, 1],
[2, 2],
[3, 3]])
np.insert(a, 1, 5)
array([1, 5, 1, 2, 2, 3, 3])
np.insert(a, 1, 5, axis=1)
array([[1, 5, 1],
[2, 5, 2],
[3, 5, 3]])
Difference between sequence and scalars:

np.insert(a, [1], [[1],[2],[3]], axis=1)
array([[1, 1, 1],
[2, 2, 2],
[3, 3, 3]])
np.array_equal(np.insert(a, 1, [1, 2, 3], axis=1),
… np.insert(a, [1], [[1],[2],[3]], axis=1))
True
b = a.flatten()
b
array([1, 1, 2, 2, 3, 3])
np.insert(b, [2, 2], [5, 6])
array([1, 1, 5, 6, 2, 2, 3, 3])
np.insert(b, slice(2, 4), [5, 6])
array([1, 1, 5, 2, 6, 2, 3, 3])
np.insert(b, [2, 2], [7.13, False]) # type casting
array([1, 1, 7, 0, 2, 2, 3, 3])
x = np.arange(8).reshape(2, 4)
idx = (1, 3)
np.insert(x, idx, 999, axis=1)
array([[ 0, 999, 1, 2, 999, 3],
[ 4, 999, 5, 6, 999, 7]])

http://blog.csdn.net/a819825294/article/details/53200601

power(x1, x2)
对x1中的每个元素求x2次方。不会改变x1上午shape。