【python函数】np.tile()函数用法解析

   n p . t i l e ( A , r e p s ) {np.tile(A,reps)} np.tile(A,reps)函数可对输入的数组,元组或列表进行重复构造,其输出是数组
  该函数有两个参数:
   A {A} A:输入的数组,元组或列表
   r e p s {reps} reps:重复构造的形状,可为数组,元组或列表

为了方便,这里测试采用数组输入
r e p s {reps} reps可为一个值

import numpy as np

x = np.array([[1,2],[3,4]])
y = np.tile(x, 2)
print('------------------------')
print('x的形状:', x.shape)
print('x的值:\n', x)
print('y的形状:', y.shape)
print('y的值:\n', y)
print('------------------------')

输出:此时,A数组横向重复

------------------------
x的形状: (2, 2)
x的值:
 [[1 2]
 [3 4]]
y的形状: (2, 4)
y的值:
 [[1 2 1 2]
 [3 4 3 4]]
------------------------

r e p s {reps} reps可为一个可为数组,元组或列表

y = np.tile(x, (2,1))
print('------------------------')
print('x的形状:', x.shape)
print('x的值:\n', x)
print('y的形状:', y.shape)
print('y的值:\n', y)
print('------------------------')

输出:此时,A数组纵向重复

------------------------
x的形状: (2, 2)
x的值:
 [[1 2]
 [3 4]]
y的形状: (4, 2)
y的值:
 [[1 2]
 [3 4]
 [1 2]
 [3 4]]
------------------------

r e p s {reps} reps可同时控制横向和纵向重复

y = np.tile(x, (2,3))
print('------------------------')
print('x的形状:', x.shape)
print('x的值:\n', x)
print('y的形状:', y.shape)
print('y的值:\n', y)
print('------------------------')

输出:A数组横向重复到原来的3倍,纵向重复到原来的2倍

------------------------
x的形状: (2, 2)
x的值:
 [[1 2]
 [3 4]]
y的形状: (4, 6)
y的值:
 [[1 2 1 2 1 2]
 [3 4 3 4 3 4]
 [1 2 1 2 1 2]
 [3 4 3 4 3 4]]
------------------------

总结: r e p s : ( m , n ) {reps:(m,n)} reps:(m,n), 其中 m {m} m控制纵向重复, n {n} n控制横向重复

  • 15
    点赞
  • 68
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
np.tile函数是NumPy库中的一个函数,用于将数组沿指定的维度进行复制和拼接。它的作用是将一个数组按照指定的重复次数在指定的维度上进行复制,并将复制后的数组进行拼接。\[1\] 例如,如果我们有一个数组arr = np.array(\[\[1, 2, 3\], \[4, 5, 6\]\]),我们可以使用np.tile(arr, 2)来将该数组在第二个维度上复制两次,得到一个新的数组arr1。打印arr1的结果为\[\[1 2 3 1 2 3\],\[4 5 6 4 5 6\]\],而arr1的形状为(2, 6)。\[1\] 另外,np.tile函数还可以接受一个元组作为重复次数的参数,用于指定在每个维度上的重复次数。例如,np.tile(arr, (1, 2, 1, 3))表示在第二个维度上复制两次,在第四个维度上复制三次,得到一个新的数组arr1。打印arr1的结果为\[\[\[\[1 2 3 1 2 3 1 2 3\] \[4 5 6 4 5 6 4 5 6\]\] \[\[1 2 3 1 2 3 1 2 3\] \[4 5 6 4 5 6 4 5 6\]\]\]\],而arr1的形状为(1, 2, 2, 9)。\[3\] 总结来说,np.tile函数可以用于在指定的维度上复制和拼接数组,可以通过指定重复次数或元组来控制复制的方式。 #### 引用[.reference_title] - *1* *3* [np.tile()函数,numpy.tile()函数的通俗的详细解释,python中有哪些函数可扩展数组数据?np.repeat/np....](https://blog.csdn.net/PSpiritV/article/details/123266458)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [【python函数np.tile()函数用法解析](https://blog.csdn.net/qq_43426908/article/details/121142811)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值