[英]Python: Extracting float values from array of lists
在數據處理期間,我創建了一個看起來像這樣的數組:
[array([ 0.08606408]) array([ 0.26071976])
array([ 0.181566 , 0.94154611]) array([ 0.1734347 , 0.94160601])
array([ 0.17859844, 0.94167483]) array([ 0.16880761, 0.94156277])
array([ 0.17624151, 0.94149038]) array([ 0.18770433, 0.94181287])
array([ 0.16707977, 0.94227733]) array([ 0.94162233])
array([ 0.9426902, 0.9615621]) array([ 0.94195127, 0.96174422])
array([ 0.94237795, 0.96195226, 0.98059446])
array([ 0.94249657, 0.96219391, 0.98095329])
array([ 0.94280697, 0.96286183, 0.98109352])
array([ 0.94267473, 0.96304417, 0.98252799])]
以以下方式創建:
peakpositions = []
peakpositions.append(stuff)
如何將浮點值提取到單個一維numpy數組中? 我想要的是:
[0.08606408, 0.26071976, 0.181566 ... 0.98252799]
提前致謝!
您可以串聯內部數組:
peakpositions=np.concatenate(peakpositions)
演示:
>>> l= [[array([ 0.08606408]), array([ 0.26071976]),
array([ 0.181566 , 0.94154611]),
array([ 0.1734347 , 0.94160601]),
array([ 0.17859844, 0.94167483]),
array([ 0.16880761, 0.94156277]),
array([ 0.17624151, 0.94149038]),
array([ 0.18770433, 0.94181287]),
array([ 0.16707977, 0.94227733]), array([ 0.94162233]),
array([ 0.9426902, 0.9615621]), array([ 0.94195127, 0.96174422]),
array([ 0.94237795, 0.96195226, 0.98059446]),
array([ 0.94249657, 0.96219391, 0.98095329]),
array([ 0.94280697, 0.96286183, 0.98109352]),
array([ 0.94267473, 0.96304417, 0.98252799])]
>>> np.concatenate(l)
array([ 0.08606408, 0.26071976, 0.181566 , 0.94154611, 0.1734347 ,
0.94160601, 0.17859844, 0.94167483, 0.16880761, 0.94156277,
0.17624151, 0.94149038, 0.18770433, 0.94181287, 0.16707977,
0.94227733, 0.94162233, 0.9426902 , 0.9615621 , 0.94195127,
0.96174422, 0.94237795, 0.96195226, 0.98059446, 0.94249657,
0.96219391, 0.98095329, 0.94280697, 0.96286183, 0.98109352,
0.94267473, 0.96304417, 0.98252799])
>>>
創建一個空列表/數組並擴展它。
array_1d = []
for array in arrays:
array_1d.extend(array)
那應該做魔術。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.