python numpy

1,创建空的array

x = np.array([]) #从list创建

2,往array中增加元素

x = np.array([1, 2, 3, 4, 5])
Y = np.array([[1,2,3],[4,5,6]])
往x中增加1个或2个元素:
x = np.append(x, 6)
x = np.append(x, [7, 8])
往y中增加1行:
y = np.append(Y, [[7,8,9]], axis=0)
往y中增加增加1列:
y = np.append(Y,[[9],[10]], axis=1)

3,在array某个位置添加元素

x = np.array([1, 2, 5, 6, 7])
Y = np.array([[1,2,3],[7,8,9]])
在x的位置2(即2和5之间)添加两个整数:
x = np.insert(x,2,[3,4])
在Y的位置1(即第一行和第二行之间)处添加一行:
Y = np.insert(Y,1,[4,5,6],axis=0)
在Y的位置1处添加全为5的列:
Y = np.insert(Y,1,5, axis=1)

4,array和其它数据类型的转换

array转list:
X = np.arange(20)
Y = np.ndarray.tolist(X)

5,array的基本运算

X = np.array([1,2,3,4]).reshape(2,2)
Y = np.array([5.5,6.5,7.5,8.5]).reshape(2,2)

加减乘数:
np.add(X,Y)
np.subtract(X,Y)
np.multiply(X,Y)
np.divide(X,Y)

数乘、开方和乘方相当于对每个元素分别操作。

按行或者列(行为axis=0,列为axis=1,不设置axis参数表示对所有的数据进行操作)求和,最大值,最小值,标准差,平均值:
X.sum(axis=0)
X.max(axis=0)
X.min(axis=0)
X.std(axis=0)
X.mean(axis=0)

6,查看array的属性

查看类型:type(x)
查看维度:x.shape
查看数据类型:x.dtype

7,array形状改变

X = np.arange(20)
对形状进行改变:.reshape()
X.reshape(4, 5)
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14],
[15, 16, 17, 18, 19]])
在交互模式运行有返回值,原数组不变。

.resize()与.reshape()功能相同,.resize()在交互模式运行无返回值,直接对原数组进行修改

转置:.T()

高维空间维度的某两个维度变换:.swapaxes(1, 2)
python的维度从0开始编号,如三维数组为0,1,2,.swapaxes(1, 2)是对第2个维度和第3个维度进行变换。原数组不变。

将数组变成1维:.flatten()

8,删除array中的元素

x = np.array(range(1, 4, 1))
print(x)
x = np.delete(x, [0, 1])
print(x)
# 输出为
[1 2 3]
[3]

9,numpy中的数据类型(dtype)

‘b’ − boolean

‘i’ − (signed) integer

‘u’ − unsigned integer

‘f’ − floating-point

‘c’ − complex-floating point

‘m’ − timedelta

‘M’ − datetime

‘O’ − (Python) objects

‘S’, ‘a’ − (byte-)string

‘U’ − Unicode

‘V’ − raw data (void)

Note

numpy相比于python自带的list,优点是速度快,集成了大量的内部函数。

用numpy可以构造一维向量和多维数组,同一个数组中只能有一种数据类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值