随笔 - 384  文章 - 0  评论 - 35  阅读 - 142万

numpy.repeat 重复数组的元素(可用于数组的广播)

有时候,我们需要根据某列的分成多列,那么,有些列就需要重复多次,比如说:

newvalues=np.dstack((np.repeat(t.reportno.values,list(map(len,t.data_list.values))),np.concatenate(t.data_list.values)))
pd.DataFrame(data=newvalues[0],columns=['reportno','data_list'])

#看看这个repeat
list(map(len,t.data_list.values))
#[4, 4, 4, 18, 4, 24, 13, 4, 64, 24, 18, 4, 7, 13, 17]

 

numpy.repeat()

我们下面看一下函数

numpy.repeat(a, repeats, axis=None)

参数:

a:array_like ,需要重复的数据

repeats:int or array of ints,每个元素的重复次数。可以是list,比如上面的

axis:int, 可选,axis=None(默认)时候就会flatten当前矩阵,实际上就是变成了一个行向量,axis=0,沿着y轴复制,实际上增加了行数,axis=1,沿着x轴复制,实际上增加列数

例子:

复制代码
#3重复4次
np.repeat(3, 4)
#array([3, 3, 3, 3])

#重复2次,注意不是1234,1234
x = np.array([[1,2],[3,4]])
np.repeat(x, 2)
#array([1, 1, 2, 2, 3, 3, 4, 4])

#增加列数
np.repeat(x, 3, axis=1)
'''
array([[1, 1, 1, 2, 2, 2],
       [3, 3, 3, 4, 4, 4]])
'''

#增加行数,1相当于原来的值,重复一次就是原来的值
np.repeat(x, [1, 2], axis=0)
'''
array([[1, 2],
       [3, 4],
       [3, 4]])
'''
复制代码

官网:https://numpy.org/doc/stable/reference/generated/numpy.repeat.html

 

pandas.Series.repeat

我们一般这样使用

df.col.repeat(n) 

其中n和上面的repeats参数一样,还有axis不需要填

更多信息,请查看官网:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.repeat.html?highlight=repeat#pandas.Series.repeat

 

posted on   小小喽啰  阅读(4894)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示