欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python?生成多行重復數(shù)據(jù)的方法實現(xiàn)

 更新時間:2023年03月13日 10:57:24   作者:勤奮的大熊貓  
本文主要介紹了Python?生成多行重復數(shù)據(jù)的方法實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

引言

在做科學計算或者模擬仿真的時候,相信不少小伙伴會遇到這樣的問題,比如,我們有一個一維數(shù)組如下所示:

array = [1, 2, 3, 4, 5]

此時,我們想要將其沿著 y 軸進行重復性堆疊,比如,這里我們設定 3 次, 從而我們可以得到下面的數(shù)組。

[[1. 2. 3. 4. 5.]
 [1. 2. 3. 4. 5.]
 [1. 2. 3. 4. 5.]]

那么我們該怎么辦呢?

一般方法

import numpy as np

array = np.array([1, 2, 3, 4, 5]) ? # 原始數(shù)組
repeat_time = 3 ?# 沿著y軸堆疊的次數(shù)
array_final = np.ones([repeat_time, len(array)])
for i in range(repeat_time):
? ? array_final[i, :] = array

print(array_final)
"""
result:
[[1. 2. 3. 4. 5.]
?[1. 2. 3. 4. 5.]
?[1. 2. 3. 4. 5.]]
"""

使用np.repeat函數(shù)

顯然,上述方法比較麻煩,為了簡化,我們可以世界使用 np.repeat() 函數(shù)實現(xiàn)這個功能。

import numpy as np

array = np.array([1, 2, 3, 4, 5]) ?# 原始數(shù)組
repeat_time = 3 ?# 沿著y軸堆疊的次數(shù)
array_final = np.repeat(array.reshape(1, -1), axis=0, repeats=repeat_time)
print(array_final)
"""
result:
[[1 2 3 4 5]
?[1 2 3 4 5]
?[1 2 3 4 5]]
"""

關于 np.repeat() 函數(shù)的詳細用法可以參考這篇------np.repeat()函數(shù)。

使用np.meshgrid函數(shù)

當然了,對于這種情況,最簡單的方法就是使用 np.meshgrid() 函數(shù)來處理。

import numpy as np

array = np.array([1, 2, 3, 4, 5]) ?# 原始數(shù)組
repeat_time = 3 ?# 沿著y軸堆疊的次數(shù)
array_1 = array.copy()[0:repeat_time]
array_final, array_final1 = np.meshgrid(array, array_1)
print(array_final)
"""
result:
[[1 2 3 4 5]
?[1 2 3 4 5]
?[1 2 3 4 5]]
"""

當然了,還有其他方法,比如 np.vstack() 以及 np.concatenate() 函數(shù)均可以實現(xiàn)這個操作。關于這兩個函數(shù),可以查看博客------np.concatenate()函數(shù)np.vstack()函數(shù)。

到此這篇關于Python 生成多行重復數(shù)據(jù)的方法實現(xiàn)的文章就介紹到這了,更多相關Python 生成多行重復數(shù)據(jù)的方法實現(xiàn)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論