我有一个numpy数组列表(二维列表):
db = [ch1, ch2, ch3, ch4, ch5, ch6, ch7, ch8, ch9, ch10, ch11, ch12, ch13, ch14, ch15, ch16]
我想在这些数组中执行一些操作:
for i in db:
newch = (eegFilter(i)/sens)+25
如何使用每个循环迭代的结果创建一个新的二维列表,以便新数组看起来像这样:
[[newch_iteration_1], [newch_iteration_2], [newch_iteration_3], ....]
答案 0 :(得分:1)
使用列表理解:
[((eegFilter(i)/sens)+25).reshape(1, *i.shape) for i in db]
<强>演示:强>
In [12]: db = [np.arange(10).reshape(2, 5), np.arange(12).reshape(3, 4)]
In [13]: [(x%2).reshape(1, *x.shape) for x in db]
Out[13]:
[array([[[0, 1, 0, 1, 0],
[1, 0, 1, 0, 1]]]),
array([[[0, 1, 0, 1],
[0, 1, 0, 1],
[0, 1, 0, 1]]])]