【Python 基础】零碎知识小积累

矢量化:

“矢量化”(简化)是重写循环的过程,使得不是将阵列的单个元素处理N次,而是将阵列的4个元素同时N / 4次处理。

向量化和循环展开之间的区别:
考虑以下非常简单的循环,它添加两个数组的元素,并将结果存储到第三个数组。

 

 

其中“addFourThingsAtOnceAndStoreResult”是您的编译器用于指定向量指令的内在函数的占位符。注意,一些编译器能够自动向量化这样非常简单的循环,这通常可以通过编译选项启用。更复杂的算法仍然需要来自程序员的帮助来生成良好的矢量代码。

 

numpy中tile()函数

函数形式: tile(A,rep) 
功能:重复A的各个维度 
参数类型: 
- A: Array类的都可以,即A是一个ndarry数组
- rep:A沿着各个维度重复的次数,表示变成的矩阵的形状,例如rep=(2,2,3)表示把A当成一个元素,形成一个(2,2,3) 形状的数组。

例:

 1 >>>A=np.array([0.8,1.1])
 2 >>>np.tile(A,3)
 3  array([ 0.8,  1.1,  0.8,  1.1,  0.8,  1.1])
 4 >>>np.tile(A, (4, 1))
 5  array([[ 0.8,  1.1],
 6        [ 0.8,  1.1],
 7        [ 0.8,  1.1],
 8        [ 0.8,  1.1]])
 9 >>>np.tile([1,2],(2,2))
10  array([[1, 2, 1, 2],
11        [1, 2, 1, 2]])
12 >>>np.tile([1,2],(2,2,3))
13 array([[[1, 2, 1, 2, 1, 2],
14         [1, 2, 1, 2, 1, 2]],
15 
16        [[1, 2, 1, 2, 1, 2],
17         [1, 2, 1, 2, 1, 2]]])

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值