0
私は4つの時系列信号を異なる時間にオンにし、後で異なる時間にオフにします。例えば、チャネル0は時間0でオン、時間23でオフになる。例えば、チャネル0は時間0でオン、時間23ではオフである。チャネル2は時間= 5秒でオンになり、15でオフになります。インデックスが同じでない複数の配列をスライスする
各アレイを次の時間グリッドの内容に従ってセグメント化します。 [(0,4)、(5,8)、(9) 、11)、(12,14)、(15,19)、(20,22)、(23,24)] 信号がまだ開始していないか、信号が終了している場合は、空きスロット。
最終的に、Signals0、Signals1、Signal2、Signals3のようなリストを作成したいと思います。
import numpy as np
Signals=[np.random.normal(0,1,23),np.random.normal(0,1,10),np.random.normal(0,1,11),np.random.normal(0,1,13)]
np.set_printoptions(precision=3)
print Signals
time = [(0,23),(5,15),(9,20),(12,25)]
print time
Signals0=[[-0.585, 0.005, -0.932, -0.322, -0.527],
[0.246, 1.95 , -0.673,0.389]
[0.285,0.245, 1.226],
[0.41,-0.184, 1.642],
[0.463,0.813, 0.021, 0.531, -0.59],
[0.694, -0.528, 0.924],
[]
]
Signals1 = [[],
[ 0.74 , -0.692, -0.302, 0.558],
[0.475, -1.605, 0.438],
[ -1.106,-0.02 , 0.042],
[],
[],
[]
]
Signals2 = [[],
[],
[1.435, 0.855, -2.098],
[0.532, -0.596, 1.415],
[0.727, 0.617,-1.88 , -1.203, -0.918],
[],
[]
]
Signals3 = [[],
[],
[],
[2.462, -1.198, -0.098],
[-2.152, 1.081, -0.519, 0.675, -0.077],
[1.491, 0.071, -0.267, 1.243],
[-1.507]
]
これは私のチャンネルは、変数名の大文字を使用していない
[array([-0.585, 0.005, -0.932, -0.322, -0.527, 0.246, 1.95 , -0.673,
0.389, 0.285, 0.245, 1.226, 0.41 , -0.184, 1.642, 0.463,
0.813, 0.021, 0.531, -0.59 , 0.694, -0.528, 0.924]), array([ 0.74 , -0.692, -0.302, 0.558, 0.475, -1.605, 0.438, -1.106,
-0.02 , 0.042]), array([ 1.435, 0.855, -2.098, 0.532, -0.596, 1.415, 0.727, 0.617,
-1.88 , -1.203, -0.918]), array([ 2.462, -1.198, -0.098, -2.152, 1.081, -0.519, 0.675, -0.077,
1.491, 0.071, -0.267, 1.243, -1.507])]
。明確な[mcve]を付けてください。ローカルで生成されたランダムな値を使用した例は、パワーをほとんど説明していません。 – Julien
私は4つのオーディオファイルを持ち、それぞれ異なるインスタンスで開始し、異なるインスタンスで終了します。私は同じリストの位置に特定のタイムスロットで起こった配列の部分を入れたいです。 Signal0リストの最初の位置は、0〜4秒の間に発生した信号の部分を表します。 @Julien Bernu – MAS
だから、基本的なスライスで何が問題になっていますか? – Julien