Numpy学习笔记(四)

import numpy as np

a = np.floor(10*np.random.random((3, 4)))  # np.random.random生成[0,1)之间的浮点数,np.floor得到不大于输入元素的最大整数
print(a)
print(a.shape)


a.ravel()  # ravel将多维数组转化为一维数组,np.ravel()赋值时会改变原始数组,np.flatten()赋值时不会改变原始数组,两a改变数组的形状者都不会

a.reshape(6,2)  # 临时改变a的形状,不改变a的原始形状

print(a.T)  # 获得a的转置矩阵

print(a.T.shape)

print(a.shape)

# reshape 函数返回具有修改形状的参数,不改变原始的形状,而 ndarray.resize 方法修改数组本身
print(a)
a.resize((2, 6))
print(a)

# 如果在reshape操作中将维度指定为-1,则会自动计算其他维度
a.reshape(3, -1)    # 第一轴的维度为3,如果第二个参数是-1.则第二轴的维度根据元素个数自动计算

# 不同数组叠加在一起
a = np.floor(10*np.random.random((2, 2)))
b = np.floor(10*np.random.random((2, 2)))

np.vstack((a, b))   # 沿着第一轴堆叠起来
np.hstack((a, b))   # 沿着第二轴堆叠起来

# 函数 column_stack 将1D数组作为列叠加到2D数组中。它相当于仅用于二维数组的 hstack

from numpy import newaxis
np.column_stack((a, b))     # 2维的相当于np,hstack()

a = np.array([4., 2.])
b = np.array([3., 8.])
np.column_stack((a, b))     # a的值作为新数组的第一列,b的值作为新数组的第二列

np.hstack((a, b))           # 而hstack()返回的是一行数组

a[:, newaxis]               # 增加一个新的维度,此时为a.shape = (2,1)

np.column_stack((a[:, newaxis], b[:, newaxis]))

np.hstack((a[:, newaxis], b[:, newaxis]))   # 现在column_stack和hstack一样了

 

转载于:https://www.cnblogs.com/smartmsl/p/10604738.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值