我有一個由 30 個特征組成的時間序列t,形狀為(5400, 30). 為了繪制它并識別例外,我必須以下列方式重塑它:
t = t[:,0].reshape(-1)
現在,它變成了一個形狀的單一張量(5400,),我可以在其中執行分析并根據例外的位置創建由 True 和 False 組成的 5400 個元素的串列:
anomaly = [True, False, True, ...., False]
現在我想重塑這個大小串列(30, 5400)(與第一個相反)。我怎樣才能做到這一點?
編輯:這是我想要實作的一個例子:我有一個大小的時間序列 (2, 4)
feature 1 | feature 2 | feature 3 | feature 4
0.3 0.1 0.24 0.25
0.62 0.45 0.43 0.9
編碼為:
[[0.3, 0.1, 0.24, 0.25]
[0.62, 0.45, 0.43, 0.9]]
當我重塑它時,我得到這個大小為 (8,) 的單變數時間序列:
[0.3, 0.1, 0.24, 0.25, 0.62, 0.45, 0.43, 0.9]
在這個時間序列中,我應用了一種例外檢測方法,該方法為我提供了每個值的真/假串列:
[True, False, True, False, False, True, True, False]
我想制作這個與原始形狀相反的串列,所以它的結構如下:
feature 1 True, False
feature 2 False, True
feature 3 True, True
feature 4 False, False
形狀為 (4, 2),因此編碼應為:
[[True, False]
[False, True]
[True, True]
[False, False]]
uj5u.com熱心網友回復:
t = np.array([[0.3, 0.1, 0.24, 0.25],[0.62, 0.45, 0.43, 0.9]])
anomaly= [True, False, True, False, False, True, True, False]
your_req_array = np.array(anomaly).reshape(2,4).T
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/318294.html
下一篇:為自定義損失函式分配張量物件
