How do populations of neurons encode movement?#
This notebook will help you regenerate some of the figures in Churchland & Cunningham et al., 2012, as well as understand how changing parameters in the analysis change these visualizations (and how we interpret them).
Setup#
First, we’ll clone and install a super useful jPCA package, written by Benjamin Antin at Columbia University. If you’ve already installed this package, the cell below will simply import it.
try:
import jPCA
print('jPCA imported.')
except:
!git clone https://github.com/bantin/jPCA.git
%cd jPCA
!pip install .
jPCA imported.
After installing and/or importing the jPCA package, we also need to import numpy
and matplotlib.pyplot
.
import numpy as np
import matplotlib.pyplot as plt
print('Packages imported.')
Packages imported.
Load data and inspect it#
Below, we’ll use the helper function load_churchland_data
to load the Churchland & Cunningham et al. (2012) data that is hosted on the Churchland lab website. We’ll also first take a look at one of the objects, data
.
from dandi.dandiapi import DandiAPIClient
dandiset_id = '000070' # ephys dataset from Shenoy lab
filepath = 'sub-Jenkins/sub-Jenkins_ses-20090916_behavior+ecephys.nwb' # one file from one monkeyb
with DandiAPIClient() as client:
asset = client.get_dandiset(dandiset_id, 'draft').get_asset_by_path(filepath)
s3_url = asset.get_content_url(follow_redirects=1, strip_query=True)
print(s3_url)
https://dandiarchive.s3.amazonaws.com/blobs/2dd/66a/2dd66ad9-e7d9-4b96-9de1-4a90ca416048
import urllib.request
import jPCA
from jPCA.util import load_churchland_data, plot_projections
# URL of data to download
data_url = 'https://github.com/nwb4edu/development/blob/0f181c8092d79278fcb0320d9f53bc33fbb0df85/exampleData.mat?raw=true'
# Get the data and save it locally as "sleep_data.txt"
path, headers = urllib.request.urlretrieve(data_url, './exampleData.mat')
data, times = load_churchland_data(path)
print(len(data)) # Show the length of data
data[:10] # Look at the first 10 entries in data
---------------------------------------------------------------------------
KeyboardInterrupt Traceback (most recent call last)
Cell In[4], line 9
6 data_url = 'https://github.com/nwb4edu/development/blob/0f181c8092d79278fcb0320d9f53bc33fbb0df85/exampleData.mat?raw=true'
8 # Get the data and save it locally as "sleep_data.txt"
----> 9 path, headers = urllib.request.urlretrieve(data_url, './exampleData.mat')
11 data, times = load_churchland_data(path)
13 print(len(data)) # Show the length of data
File ~/anaconda3/envs/jb/lib/python3.11/urllib/request.py:270, in urlretrieve(url, filename, reporthook, data)
267 reporthook(blocknum, bs, size)
269 while True:
--> 270 block = fp.read(bs)
271 if not block:
272 break
File ~/anaconda3/envs/jb/lib/python3.11/http/client.py:465, in HTTPResponse.read(self, amt)
462 if self.length is not None and amt > self.length:
463 # clip the read to the "end of response"
464 amt = self.length
--> 465 s = self.fp.read(amt)
466 if not s and amt:
467 # Ideally, we would raise IncompleteRead if the content-length
468 # wasn't satisfied, but it might break compatibility.
469 self._close_conn()
File ~/anaconda3/envs/jb/lib/python3.11/socket.py:705, in SocketIO.readinto(self, b)
703 while True:
704 try:
--> 705 return self._sock.recv_into(b)
706 except timeout:
707 self._timeout_occurred = True
File ~/anaconda3/envs/jb/lib/python3.11/ssl.py:1278, in SSLSocket.recv_into(self, buffer, nbytes, flags)
1274 if flags != 0:
1275 raise ValueError(
1276 "non-zero flags not allowed in calls to recv_into() on %s" %
1277 self.__class__)
-> 1278 return self.read(nbytes, buffer)
1279 else:
1280 return super().recv_into(buffer, nbytes, flags)
File ~/anaconda3/envs/jb/lib/python3.11/ssl.py:1134, in SSLSocket.read(self, len, buffer)
1132 try:
1133 if buffer is not None:
-> 1134 return self._sslobj.read(len, buffer)
1135 else:
1136 return self._sslobj.read(len)
KeyboardInterrupt:
Hmm, why is data
a 108-length list of arrays? If we read carefully in the paper, it says:
“In the ‘maze task’ monkeys J and N made both straight reaches and reaches that curved around one or more intervening barriers. This task was beneficial because of the large variety of different reaches that could be evoked. Typically we used 27 conditions: each providing a particular arrangement of target and barriers. Monkey J performed the task for four different sets of 27 conditions, resulting in four datasets (J1 through J4). For the monkey J-array and N-array datasets, 108 conditions were presented in the same recording session.”
There are four different sets of 27 conditions (giving 108 total), each a different arrangement of a target and barrier. Each of the arrays within contains a time x neuron matrix for each condition (hereafter, for clarity, we’ll call these trials. We can inspect the first array to see how many neurons there are.
data
[array([[1.60276178, 3.62279645, 1.51476444, ..., 5.60466456, 8.12611812,
4.51181022],
[1.55470078, 3.61949889, 1.52247338, ..., 5.8348096 , 8.39029125,
4.49137067],
[1.50889271, 3.6006078 , 1.51828573, ..., 6.10419168, 8.69046855,
4.46007445],
...,
[4.12529142, 0.82163592, 0. , ..., 0.93349805, 4.08401884,
2.88854864],
[4.45614688, 0.75939308, 0. , ..., 1.02900484, 3.93844586,
2.50915528],
[4.81611363, 0.71241948, 0. , ..., 1.11870277, 3.78184694,
2.23669761]]),
array([[1.98988481e+00, 9.18115783e+00, 4.84613933e-01, ...,
8.29134273e+00, 1.28676193e+01, 5.34669479e+00],
[2.03938737e+00, 8.95338260e+00, 4.71113281e-01, ...,
8.66122138e+00, 1.29588883e+01, 5.27734065e+00],
[2.11567852e+00, 8.73625972e+00, 4.36420133e-01, ...,
9.01331021e+00, 1.30878842e+01, 5.12815676e+00],
...,
[0.00000000e+00, 8.89741886e-01, 1.20710063e-01, ...,
1.77465655e+00, 5.54310886e+00, 4.64197132e+00],
[4.34632238e-01, 8.58363468e-01, 5.94563715e-02, ...,
1.77712679e+00, 5.20989508e+00, 4.28237550e+00],
[1.23498659e+00, 8.28295046e-01, 1.18584586e-02, ...,
1.75649494e+00, 4.79042602e+00, 3.98363834e+00]]),
array([[ 1.60373245, 10.15764322, 0.29813424, ..., 6.96855588,
8.28129753, 3.90105099],
[ 1.569838 , 10.021134 , 0.31419016, ..., 7.28878381,
8.51076048, 3.937435 ],
[ 1.55323424, 9.75734348, 0.32486749, ..., 7.62972653,
8.8555404 , 3.99531886],
...,
[ 0.77569014, 1.61741704, 0.26314808, ..., 2.36269075,
5.84946381, 6.43682085],
[ 1.31849522, 1.61624415, 0.23164867, ..., 2.23056838,
5.62593022, 6.4016482 ],
[ 2.02338781, 1.62394422, 0.21108832, ..., 2.10164688,
5.39176039, 6.42803701]]),
array([[2.72760539e+00, 2.88838501e+01, 0.00000000e+00, ...,
8.51932370e+00, 1.11985675e+01, 4.52686021e+00],
[2.67390640e+00, 2.84223262e+01, 2.53716630e-03, ...,
8.87067363e+00, 1.15797916e+01, 4.22883051e+00],
[2.60115725e+00, 2.77449432e+01, 9.19432870e-03, ...,
9.22141101e+00, 1.20100251e+01, 3.87817751e+00],
...,
[1.32059867e+01, 0.00000000e+00, 2.17196058e-02, ...,
2.18950438e+00, 8.22869141e+00, 1.62000847e+01],
[1.31175366e+01, 0.00000000e+00, 1.81035530e-02, ...,
2.27029301e+00, 7.68207040e+00, 1.45853136e+01],
[1.29664334e+01, 0.00000000e+00, 1.43236629e-02, ...,
2.30341582e+00, 7.07254659e+00, 1.30476296e+01]]),
array([[ 3.41652625, 15.30420543, 0.31560335, ..., 5.55989529,
7.89834632, 2.55235159],
[ 3.44291429, 14.94753565, 0.29931779, ..., 5.78522773,
8.05902305, 2.51652769],
[ 3.4348078 , 14.41107245, 0.27380366, ..., 6.09202126,
8.30579099, 2.58677391],
...,
[20.97243685, 0. , 0. , ..., 1.0827491 ,
5.51890839, 18.01749614],
[21.19895812, 0. , 0. , ..., 1.29116673,
5.3266248 , 17.86940981],
[21.22406973, 0. , 0. , ..., 1.46901007,
5.12274536, 17.59725915]]),
array([[4.03923418e+00, 1.36332909e+01, 0.00000000e+00, ...,
5.44131703e+00, 8.48576516e+00, 3.06348630e+00],
[4.07191047e+00, 1.32253702e+01, 2.53716630e-03, ...,
5.64141161e+00, 8.58871439e+00, 3.04405261e+00],
[4.09220598e+00, 1.27503908e+01, 9.19432870e-03, ...,
5.90183520e+00, 8.72992838e+00, 3.11563348e+00],
...,
[1.82841848e+01, 0.00000000e+00, 2.17196058e-02, ...,
6.30578050e-01, 3.96554230e+00, 1.98244539e+01],
[1.83640149e+01, 0.00000000e+00, 1.81035530e-02, ...,
9.15449621e-01, 3.88906459e+00, 1.98647166e+01],
[1.83092114e+01, 0.00000000e+00, 1.43236629e-02, ...,
1.16036934e+00, 3.77210293e+00, 1.96804517e+01]]),
array([[1.6649231 , 1.54846916, 0.23029342, ..., 5.06335567, 9.19511398,
5.04997387],
[1.68467823, 1.52632859, 0.19169466, ..., 5.28183642, 9.49420333,
5.1348521 ],
[1.70369659, 1.4793452 , 0.18148143, ..., 5.55075934, 9.8505357 ,
5.24377644],
...,
[2.31733141, 1.80694326, 0. , ..., 1.35858661, 5.58251028,
5.43404842],
[2.16833113, 1.774965 , 0. , ..., 1.35887535, 5.24024774,
4.80467814],
[2.00670126, 1.74779926, 0. , ..., 1.36631926, 4.90706029,
4.22998486]]),
array([[3.79552599, 3.39280084, 0. , ..., 6.32034651, 5.88440318,
3.85917332],
[3.86538517, 3.28978386, 0. , ..., 6.53654853, 5.98880166,
3.93190762],
[3.97796234, 3.1487481 , 0. , ..., 6.81210714, 6.20658187,
4.04437122],
...,
[3.90025433, 3.0066539 , 0.33077066, ..., 6.35071173, 3.46221117,
4.33747868],
[4.0121167 , 2.94413028, 0.37893628, ..., 5.54029745, 3.62462199,
4.6777363 ],
[4.15470646, 2.8824668 , 0.43859265, ..., 4.82267132, 3.74731782,
5.00949809]]),
array([[4.25736601, 4.40688495, 0. , ..., 5.07081411, 6.62688377,
3.71489383],
[4.32244144, 4.29753924, 0. , ..., 5.28244275, 6.8641511 ,
3.68663197],
[4.4330013 , 4.07015713, 0. , ..., 5.58151686, 7.18845814,
3.6953928 ],
...,
[4.01073048, 3.1942071 , 0.29335473, ..., 6.44955845, 4.349918 ,
4.21620661],
[3.73210996, 3.14390731, 0.32311401, ..., 5.57861995, 4.37063976,
4.09425406],
[3.49415452, 3.10281821, 0.36125002, ..., 4.80957995, 4.34536525,
4.05340816]]),
array([[2.28999702, 7.74126035, 0.07296037, ..., 6.23387879, 9.14562329,
3.11584665],
[2.3060687 , 7.62697086, 0.07916832, ..., 6.56379207, 9.30814884,
3.00823497],
[2.34111484, 7.50059092, 0.08822277, ..., 6.88993767, 9.50221832,
2.89594494],
...,
[2.56678043, 0.66563231, 0. , ..., 1.76669617, 4.02700293,
2.6701241 ],
[2.75769703, 0.64591699, 0. , ..., 1.80855134, 3.81500126,
2.87936864],
[2.96793386, 0.6293154 , 0. , ..., 1.80527546, 3.61018331,
3.18619669]]),
array([[2.22243032, 5.86310697, 0.06353286, ..., 4.0875398 , 6.73371472,
3.60170182],
[2.25003339, 5.61461194, 0.07320199, ..., 4.13303265, 6.84387284,
3.67581931],
[2.265914 , 5.42962795, 0.0814212 , ..., 4.25228074, 7.06619933,
3.79158112],
...,
[4.14736749, 0.28155847, 0.10789361, ..., 4.38130409, 4.52306208,
7.51798279],
[3.38768577, 0.2437706 , 0.10365644, ..., 4.0154636 , 4.41358797,
7.73093106],
[2.71222351, 0.19779762, 0.10204216, ..., 3.69522705, 4.33848476,
7.94926667]]),
array([[ 1.75367305, 10.30253536, 0. , ..., 4.76537221,
5.43230703, 2.93712154],
[ 1.74630018, 10.07630737, 0. , ..., 4.89012279,
5.53349158, 2.97229503],
[ 1.69146311, 9.79758433, 0. , ..., 5.07916612,
5.74163086, 3.0560736 ],
...,
[ 8.78780058, 0.51406829, 0.66561513, ..., 3.79634663,
2.80072673, 4.33355048],
[ 7.65555519, 0.5100773 , 0.71488696, ..., 3.49212057,
2.9781718 , 4.5230533 ],
[ 6.5348606 , 0.50013062, 0.7771565 , ..., 3.22302843,
3.1442675 , 4.84313429]]),
array([[1.45822298, 1.4038674 , 0.92141125, ..., 4.80667142, 8.07372409,
4.15168228],
[1.33708779, 1.369454 , 0.93998289, ..., 4.94590039, 8.38556846,
4.15988013],
[1.2296963 , 1.33724842, 0.97645323, ..., 5.16257476, 8.76521161,
4.18467935],
...,
[1.73311544, 2.02098164, 0. , ..., 0.76630267, 4.1470332 ,
3.63341392],
[2.09587455, 1.91890652, 0. , ..., 0.82959351, 4.03811835,
3.34394868],
[2.55664619, 1.82757726, 0. , ..., 0.92376486, 3.90849472,
3.15590811]]),
array([[4.25489158, 2.2333193 , 0.36996591, ..., 4.54661333, 8.77507794,
3.8082854 ],
[4.35992342, 2.13523051, 0.39126254, ..., 4.74093078, 8.91341408,
3.95202798],
[4.48601521, 2.01835732, 0.41867211, ..., 5.00097447, 9.07736519,
4.20487487],
...,
[8.05659481, 1.50917466, 0.07725393, ..., 2.05013318, 3.48998356,
9.86991491],
[7.57380595, 1.3843801 , 0.05474612, ..., 1.87889377, 3.53598455,
9.78707421],
[7.08010562, 1.27336851, 0.03671255, ..., 1.74452815, 3.48073192,
9.65169941]]),
array([[3.25409131, 3.90045749, 0.10437125, ..., 5.6191784 , 7.83541088,
4.73721557],
[3.27841126, 3.78283811, 0.08835427, ..., 5.89553278, 7.92636852,
4.80289346],
[3.30685242, 3.55131811, 0.09565402, ..., 6.24436529, 8.05674915,
4.90276256],
...,
[7.92252724, 2.13717222, 0. , ..., 2.4409555 , 3.64309195,
8.7969883 ],
[7.45187619, 2.01801197, 0. , ..., 2.15925483, 3.66908537,
8.35897052],
[6.96073648, 1.91333168, 0. , ..., 1.93002863, 3.63382 ,
7.911418 ]]),
array([[3.97866997e+00, 2.65780358e+01, 1.34693114e-02, ...,
5.30774374e+00, 8.16345058e+00, 4.71293781e+00],
[3.92536697e+00, 2.60336090e+01, 1.99575768e-02, ...,
5.56217007e+00, 8.48541707e+00, 4.55802081e+00],
[3.87711828e+00, 2.54265805e+01, 2.76546376e-02, ...,
5.89482327e+00, 8.96385394e+00, 4.39200621e+00],
...,
[1.22856272e+01, 0.00000000e+00, 3.85142694e-03, ...,
2.42997324e+00, 1.01212222e+01, 1.30767225e+01],
[1.19057554e+01, 0.00000000e+00, 0.00000000e+00, ...,
2.39393750e+00, 9.54856083e+00, 1.14896825e+01],
[1.15994328e+01, 0.00000000e+00, 0.00000000e+00, ...,
2.34332087e+00, 8.98188226e+00, 1.00576055e+01]]),
array([[5.78180347e+00, 1.24273094e+01, 8.48301657e-02, ...,
3.92292240e+00, 6.65332623e+00, 4.53686872e+00],
[5.84942413e+00, 1.21151390e+01, 1.10475821e-01, ...,
4.15463021e+00, 6.82380802e+00, 4.49961767e+00],
[5.89954086e+00, 1.16717266e+01, 1.32687002e-01, ...,
4.47591234e+00, 7.08684178e+00, 4.49069089e+00],
...,
[2.48285674e+01, 7.16746303e-01, 3.12014047e-02, ...,
8.82000289e-01, 5.13507529e+00, 1.97768753e+01],
[2.42346104e+01, 7.11968538e-01, 2.06943818e-02, ...,
1.03977212e+00, 5.15293282e+00, 1.88872957e+01],
[2.35015066e+01, 7.11166825e-01, 9.75073510e-03, ...,
1.17038916e+00, 5.09676736e+00, 1.78665228e+01]]),
array([[ 5.12443559, 13.04651492, 0.05091652, ..., 3.43488765,
8.97304307, 4.24405781],
[ 5.21194438, 12.67348409, 0.06602638, ..., 3.44324733,
9.03239935, 4.22264723],
[ 5.28189248, 12.1925065 , 0.07965902, ..., 3.53066354,
9.12182614, 4.25632136],
...,
[21.02864067, 0. , 0.03530874, ..., 2.02905498,
5.40267679, 19.17050593],
[20.4544492 , 0. , 0.03083018, ..., 2.15033032,
5.24095704, 18.20334931],
[19.78631255, 0. , 0.0264245 , ..., 2.2564964 ,
5.00620941, 17.20847634]]),
array([[1.38777086, 6.69866761, 0.40593286, ..., 4.84711283, 7.11797523,
3.57711873],
[1.35803988, 6.60315658, 0.40462648, ..., 5.06226378, 7.22890295,
3.58125038],
[1.32480211, 6.51266095, 0.39364844, ..., 5.30112249, 7.3900845 ,
3.60537882],
...,
[3.07132061, 0.2049852 , 0. , ..., 1.71602461, 1.54135429,
3.35045502],
[3.17139205, 0.16934381, 0. , ..., 1.78847837, 1.57852839,
3.37813311],
[3.29377544, 0.14237518, 0. , ..., 1.82556712, 1.66522806,
3.49864026]]),
array([[3.00087168e+00, 4.72361792e+00, 4.74024431e-02, ...,
4.29480212e+00, 5.84036558e+00, 4.44696285e+00],
[3.01314000e+00, 4.65435025e+00, 6.62882392e-02, ...,
4.52522718e+00, 5.98633145e+00, 4.45957194e+00],
[3.02125018e+00, 4.56844432e+00, 8.17333501e-02, ...,
4.83579114e+00, 6.26532858e+00, 4.50095183e+00],
...,
[9.73962453e+00, 0.00000000e+00, 2.40585796e-02, ...,
5.13498969e-01, 5.35515581e+00, 7.04212014e+00],
[9.41572231e+00, 0.00000000e+00, 1.62365342e-02, ...,
5.85226029e-01, 4.98006686e+00, 6.13669266e+00],
[8.98775279e+00, 0.00000000e+00, 8.03138800e-03, ...,
6.67661338e-01, 4.78371131e+00, 5.39733858e+00]]),
array([[3.19509997e+00, 7.06034735e+00, 1.40686536e-01, ...,
2.94645671e+00, 8.71188517e+00, 4.49860281e+00],
[3.18746901e+00, 6.95022800e+00, 1.57585390e-01, ...,
3.17676686e+00, 8.91829738e+00, 4.48168933e+00],
[3.18791428e+00, 6.78063069e+00, 1.68300706e-01, ...,
3.52565657e+00, 9.23233496e+00, 4.47540307e+00],
...,
[8.47279129e+00, 0.00000000e+00, 3.88588954e-03, ...,
1.30588602e+00, 7.35853915e+00, 7.37964104e+00],
[8.23659917e+00, 0.00000000e+00, 0.00000000e+00, ...,
1.20164336e+00, 6.77262746e+00, 6.89081463e+00],
[7.94496763e+00, 0.00000000e+00, 0.00000000e+00, ...,
1.12861721e+00, 6.29599618e+00, 6.45222754e+00]]),
array([[2.19940172, 1.98088344, 0.24767557, ..., 3.60642881, 7.3542422 ,
3.70644404],
[2.23674966, 1.99366614, 0.27783974, ..., 3.80544115, 7.50219938,
3.72811846],
[2.29657281, 1.96595482, 0.31676653, ..., 4.09768519, 7.7296775 ,
3.80369821],
...,
[0.09425223, 1.3394413 , 0.05902881, ..., 1.19785259, 4.37708621,
5.56882634],
[0.07709037, 1.32718927, 0.04799686, ..., 1.15134788, 4.2731897 ,
5.1603122 ],
[0.09162409, 1.31963047, 0.03822359, ..., 1.13103445, 4.1744262 ,
4.90142869]]),
array([[0.96135761, 2.20511121, 0.05393278, ..., 2.98061867, 6.02008901,
4.87765807],
[0.86248433, 2.19959864, 0.05827351, ..., 3.10300856, 6.16505559,
4.88165262],
[0.75584989, 2.14411647, 0.05507524, ..., 3.32435751, 6.40951209,
4.88728879],
...,
[2.49563713, 0.86038449, 0.1524641 , ..., 1.41201953, 4.59752948,
7.27539778],
[2.38478433, 0.8556708 , 0.13869091, ..., 1.37828737, 4.50695071,
6.750338 ],
[2.21720243, 0.85661111, 0.13074626, ..., 1.37099487, 4.45041358,
6.23580454]]),
array([[1.22641474, 2.95840783, 0. , ..., 3.98884661, 6.5163163 ,
3.05823326],
[1.14217731, 2.86712107, 0. , ..., 4.13850478, 6.65828743,
2.99411613],
[1.06110112, 2.68540493, 0. , ..., 4.35598484, 6.89852176,
3.00772725],
...,
[1.09731801, 2.36910253, 0.42007969, ..., 1.79745415, 4.64747809,
7.92206627],
[0.98389337, 2.34266681, 0.44607805, ..., 1.73855544, 4.57382821,
7.61844541],
[0.84326355, 2.31674102, 0.48166087, ..., 1.69705222, 4.50907122,
7.33896333]]),
array([[2.99763072e+00, 1.96323541e+01, 2.70962416e-02, ...,
6.12023266e+00, 9.51782188e+00, 5.50776390e+00],
[3.01299957e+00, 1.91981704e+01, 3.51019058e-02, ...,
6.37624967e+00, 9.69256663e+00, 5.55272046e+00],
[3.03348320e+00, 1.86518567e+01, 4.06874469e-02, ...,
6.68295314e+00, 9.88500327e+00, 5.61556246e+00],
...,
[9.61699427e+00, 9.45329945e-01, 1.78234161e-02, ...,
2.10301337e+00, 5.82217553e+00, 1.96437510e+01],
[9.85833869e+00, 9.37684306e-01, 1.36393100e-02, ...,
2.15995698e+00, 5.57774024e+00, 1.83140321e+01],
[1.00658079e+01, 9.28874445e-01, 9.47277258e-03, ...,
2.18708841e+00, 5.25645669e+00, 1.69463231e+01]]),
array([[3.63537765e+00, 1.19974640e+01, 0.00000000e+00, ...,
4.57322491e+00, 8.09597564e+00, 3.83390805e+00],
[3.54801757e+00, 1.16979356e+01, 2.53716630e-03, ...,
4.85857253e+00, 8.24196395e+00, 3.98482367e+00],
[3.47092627e+00, 1.12132327e+01, 9.19432870e-03, ...,
5.17373947e+00, 8.52425469e+00, 4.26697208e+00],
...,
[1.15367878e+01, 1.30322383e+00, 2.17196058e-02, ...,
1.56675809e+00, 9.78182623e+00, 1.84127366e+01],
[1.15019246e+01, 1.23825087e+00, 1.81035530e-02, ...,
1.58063123e+00, 9.33701840e+00, 1.78079303e+01],
[1.15205752e+01, 1.18518781e+00, 1.43236629e-02, ...,
1.56453236e+00, 8.84754558e+00, 1.71223967e+01]]),
array([[4.22375764e+00, 1.20053314e+01, 0.00000000e+00, ...,
5.65951609e+00, 7.25242349e+00, 5.17238810e+00],
[4.19626761e+00, 1.17045260e+01, 2.53716630e-03, ...,
5.94484749e+00, 7.31411207e+00, 5.29982415e+00],
[4.18205575e+00, 1.12664790e+01, 9.19432870e-03, ...,
6.23023403e+00, 7.50053459e+00, 5.47098149e+00],
...,
[1.27070826e+01, 8.76665488e-01, 2.17196058e-02, ...,
1.44004333e+00, 7.72524469e+00, 1.69800816e+01],
[1.25858782e+01, 8.10825650e-01, 1.81035530e-02, ...,
1.50217462e+00, 7.37971515e+00, 1.61242861e+01],
[1.25028375e+01, 7.53293047e-01, 1.43236629e-02, ...,
1.52833120e+00, 7.05146990e+00, 1.52059384e+01]]),
array([[ 1.7935364 , 11.8475038 , 0.15026386, ..., 6.40275778,
8.93016703, 3.06747581],
[ 1.82836078, 11.69047732, 0.18348271, ..., 6.73682112,
8.85584892, 3.0481358 ],
[ 1.84746314, 11.35864513, 0.21486636, ..., 7.08339677,
8.78648536, 3.08486769],
...,
[ 5.46684262, 0.38420527, 0.05799396, ..., 2.014417 ,
3.63147478, 6.17732637],
[ 5.15763441, 0.40360853, 0.0465939 , ..., 2.04140873,
3.58573012, 5.80276532],
[ 4.80120876, 0.44059979, 0.03515912, ..., 2.02528808,
3.48200588, 5.62369788]]),
array([[ 3.1887287 , 13.25987976, 0.10330944, ..., 5.7571771 ,
7.57066134, 2.54483396],
[ 3.26083993, 12.98290666, 0.10075447, ..., 6.01725922,
7.70705664, 2.53910032],
[ 3.31367473, 12.51428896, 0.09745021, ..., 6.29195401,
7.90675546, 2.63724261],
...,
[11.85584907, 0.24369296, 0. , ..., 2.0945764 ,
4.91962035, 14.42108374],
[11.30509882, 0.26068157, 0. , ..., 2.09934859,
4.92811895, 14.62655123],
[10.67866027, 0.28497589, 0. , ..., 2.07387783,
4.84042528, 14.73909536]]),
array([[3.15976274e+00, 1.33627828e+01, 0.00000000e+00, ...,
6.01220130e+00, 7.06004846e+00, 3.29377499e+00],
[3.23742961e+00, 1.30958731e+01, 2.47132728e-03, ...,
6.24508378e+00, 7.16851245e+00, 3.31466139e+00],
[3.28712602e+00, 1.25559924e+01, 9.14180889e-03, ...,
6.48864923e+00, 7.36829399e+00, 3.40638939e+00],
...,
[1.38482528e+01, 1.48540114e+00, 2.11380192e-02, ...,
2.06552875e+00, 7.33089578e+00, 1.35062266e+01],
[1.33159227e+01, 1.50235705e+00, 1.74831348e-02, ...,
2.09282911e+00, 7.22053490e+00, 1.32997335e+01],
[1.26612043e+01, 1.53072653e+00, 1.36477942e-02, ...,
2.09201713e+00, 6.99832914e+00, 1.30762565e+01]]),
array([[1.49520493, 1.59506504, 0.99953592, ..., 5.65482207, 7.87302478,
4.31856282],
[1.50439763, 1.57291673, 1.00222191, ..., 5.95846767, 8.02387833,
4.3466483 ],
[1.52020623, 1.52113321, 1.04170461, ..., 6.29884278, 8.24312307,
4.39887546],
...,
[0.26336281, 1.55259501, 0.13021132, ..., 1.09891633, 3.84432156,
3.8501816 ],
[0.21135381, 1.50343386, 0.12166742, ..., 1.12203912, 3.84091546,
3.59397446],
[0.17868697, 1.46402991, 0.1230709 , ..., 1.1386711 , 3.79171238,
3.37428807]]),
array([[2.21482573, 4.84385221, 0.07990027, ..., 5.08479568, 7.63274783,
3.73122304],
[2.3090993 , 4.78901263, 0.06633978, ..., 5.31674414, 7.86520884,
3.68613037],
[2.42035024, 4.65308661, 0.05242207, ..., 5.58785983, 8.17305142,
3.66173987],
...,
[2.8886874 , 0.67577859, 0.20823527, ..., 1.19691341, 3.44476475,
7.66422816],
[3.41607815, 0.67449865, 0.19879259, ..., 1.25995568, 3.35859978,
7.8487609 ],
[3.96024996, 0.68183315, 0.19896849, ..., 1.3113419 , 3.29359912,
7.96266972]]),
array([[1.6960728 , 6.53097878, 0.06536701, ..., 5.94256737, 7.52977584,
3.83538249],
[1.77950815, 6.40953005, 0.05839111, ..., 6.19658662, 7.79983803,
3.78179281],
[1.87307874, 6.12083478, 0.04673653, ..., 6.47773945, 8.1665469 ,
3.72368173],
...,
[2.59630336, 1.54977859, 0.07911601, ..., 1.49259129, 5.70029078,
4.71490631],
[3.29044987, 1.54438948, 0.05625324, ..., 1.51749561, 5.46423859,
4.79596847],
[4.00091147, 1.54790133, 0.03995352, ..., 1.53358746, 5.24029925,
4.91344362]]),
array([[4.14344900e+00, 3.13098776e+01, 2.97058345e-02, ...,
5.97579826e+00, 9.41465860e+00, 4.52095065e+00],
[4.16282577e+00, 3.07014303e+01, 3.93151418e-02, ...,
6.30931889e+00, 9.74146054e+00, 4.49821858e+00],
[4.18034259e+00, 2.99769094e+01, 4.82165598e-02, ...,
6.71178293e+00, 1.01461969e+01, 4.48882126e+00],
...,
[1.54630392e+01, 0.00000000e+00, 2.33585146e-02, ...,
1.86302854e+00, 8.03410335e+00, 1.60601763e+01],
[1.53823641e+01, 0.00000000e+00, 2.03937074e-02, ...,
1.89137830e+00, 7.60697017e+00, 1.49559448e+01],
[1.52656250e+01, 0.00000000e+00, 1.75215179e-02, ...,
1.89316128e+00, 7.12497329e+00, 1.39009992e+01]]),
array([[5.47106841e+00, 1.77383393e+01, 0.00000000e+00, ...,
4.86080322e+00, 8.71058382e+00, 4.48338062e+00],
[5.44172802e+00, 1.72134419e+01, 2.53716630e-03, ...,
5.23078611e+00, 8.73548380e+00, 4.61014171e+00],
[5.38501819e+00, 1.64037214e+01, 9.19432870e-03, ...,
5.62187715e+00, 8.84004688e+00, 4.83930663e+00],
...,
[2.87114781e+01, 2.60659787e+00, 2.17196058e-02, ...,
1.40162680e+00, 8.09915509e+00, 1.88956833e+01],
[2.85925713e+01, 2.56302564e+00, 1.81035530e-02, ...,
1.43106849e+00, 7.59630609e+00, 1.80055268e+01],
[2.83435577e+01, 2.52507236e+00, 1.43236629e-02, ...,
1.41391228e+00, 7.12185632e+00, 1.70501641e+01]]),
array([[5.49379538e+00, 1.54838614e+01, 0.00000000e+00, ...,
5.97195677e+00, 8.64852881e+00, 3.49431123e+00],
[5.47158415e+00, 1.50657147e+01, 2.53716630e-03, ...,
6.29931266e+00, 8.70193700e+00, 3.46910706e+00],
[5.44408459e+00, 1.44185017e+01, 9.19432870e-03, ...,
6.61295390e+00, 8.84319030e+00, 3.52772659e+00],
...,
[2.29032784e+01, 1.72711834e+00, 2.17196058e-02, ...,
1.78542445e+00, 9.00181579e+00, 1.72656980e+01],
[2.26583775e+01, 1.68333619e+00, 1.81035530e-02, ...,
1.81133256e+00, 8.54638115e+00, 1.67636696e+01],
[2.23780833e+01, 1.64961495e+00, 1.43236629e-02, ...,
1.79066346e+00, 8.05573491e+00, 1.61698982e+01]]),
array([[2.36021705e+00, 1.15408184e+01, 1.33215346e-01, ...,
6.58754187e+00, 8.77432756e+00, 3.07811738e+00],
[2.43620882e+00, 1.13165972e+01, 1.46324151e-01, ...,
6.86413135e+00, 8.90071867e+00, 3.02925226e+00],
[2.50999407e+00, 1.09916806e+01, 1.53613189e-01, ...,
7.14688064e+00, 9.06759014e+00, 2.99865992e+00],
...,
[5.42393472e+00, 0.00000000e+00, 1.93964596e-02, ...,
2.02198748e+00, 4.35205200e+00, 3.66963952e+00],
[5.29274125e+00, 0.00000000e+00, 1.47763697e-02, ...,
2.06837095e+00, 4.17548846e+00, 3.72531100e+00],
[5.13974264e+00, 0.00000000e+00, 9.78354243e-03, ...,
2.07847283e+00, 3.98809151e+00, 3.91975167e+00]]),
array([[2.11515965e+00, 1.14137872e+01, 4.51919862e-03, ...,
6.49731848e+00, 1.06353193e+01, 3.61899867e+00],
[2.11652550e+00, 1.11805178e+01, 1.42117838e-02, ...,
6.72916255e+00, 1.05993703e+01, 3.65863697e+00],
[2.11800928e+00, 1.09554890e+01, 2.14056465e-02, ...,
6.97104845e+00, 1.05455438e+01, 3.74472638e+00],
...,
[3.78188191e+00, 3.98300530e-01, 3.09664448e-02, ...,
1.16726621e+00, 3.74569771e+00, 1.04806507e+01],
[3.41155602e+00, 3.61230545e-01, 2.70267239e-02, ...,
1.35832272e+00, 3.45915741e+00, 1.02390948e+01],
[3.02367182e+00, 3.28136325e-01, 2.32779064e-02, ...,
1.50912528e+00, 3.18403548e+00, 1.00616124e+01]]),
array([[2.95345115e+00, 1.36736740e+01, 8.44528260e-02, ...,
7.21628039e+00, 1.21272168e+01, 3.32314367e+00],
[2.98213303e+00, 1.34770603e+01, 8.92205908e-02, ...,
7.43152303e+00, 1.21999120e+01, 3.25684395e+00],
[3.03032449e+00, 1.32179127e+01, 8.85302061e-02, ...,
7.64573424e+00, 1.22937933e+01, 3.20359701e+00],
...,
[3.59517297e+00, 0.00000000e+00, 1.42286127e-02, ...,
1.66274605e+00, 7.51272230e+00, 7.52233587e+00],
[3.29552877e+00, 0.00000000e+00, 1.31513234e-02, ...,
1.81817562e+00, 6.85879145e+00, 7.15228077e+00],
[3.00727663e+00, 0.00000000e+00, 1.18659823e-02, ...,
1.93583554e+00, 6.21835719e+00, 6.93685832e+00]]),
array([[1.45083369, 5.19473432, 0.99856148, ..., 7.56992812, 9.18562254,
3.99199475],
[1.3874268 , 5.12344289, 1.00445175, ..., 7.85306545, 9.41066079,
3.98503596],
[1.31823948, 4.99808232, 1.03062165, ..., 8.1287153 , 9.67396251,
4.00485996],
...,
[4.26643339, 1.70177242, 0.05217733, ..., 1.2994765 , 4.14844878,
4.87226881],
[4.33674235, 1.62514732, 0.04843383, ..., 1.38626102, 3.97709736,
4.56263727],
[4.42527984, 1.56420634, 0.04978247, ..., 1.45495498, 3.78231361,
4.32297136]]),
array([[ 3.74249695, 6.58107845, 0.06421498, ..., 6.62018952,
6.777544 , 3.08631326],
[ 3.83579299, 6.4501112 , 0.06848712, ..., 6.68268252,
7.10370097, 3.09663436],
[ 3.89593965, 6.35199516, 0.06672264, ..., 6.80281585,
7.54605677, 3.2079346 ],
...,
[21.02979328, 2.99055031, 0.02743598, ..., 6.88273964,
6.54333978, 5.43787532],
[21.06326158, 2.69092469, 0.02796466, ..., 6.03490607,
6.28133236, 5.16528269],
[20.81793362, 2.42254333, 0.02853441, ..., 5.30882815,
6.03288143, 4.98317765]]),
array([[ 3.66096145, 11.25379698, 0. , ..., 6.49700534,
6.61127461, 3.39594511],
[ 3.79211182, 11.15791179, 0. , ..., 6.58961224,
6.76221978, 3.36081376],
[ 3.87771498, 11.09443608, 0. , ..., 6.72931891,
6.97890933, 3.38409687],
...,
[22.15024341, 1.65790259, 0.20670073, ..., 6.51855351,
3.52205454, 5.54225004],
[21.99863739, 1.36200078, 0.2180504 , ..., 5.71459667,
3.59567449, 5.54423293],
[21.53081294, 1.11054621, 0.23290841, ..., 5.0206471 ,
3.62810197, 5.5504227 ]]),
array([[2.69505829e+00, 4.64116161e+00, 2.47714534e-01, ...,
5.00414885e+00, 7.57980492e+00, 3.62323158e+00],
[2.76323507e+00, 4.57496781e+00, 2.52817542e-01, ...,
5.23794087e+00, 7.82766298e+00, 3.67883371e+00],
[2.86198162e+00, 4.47476463e+00, 2.67400447e-01, ...,
5.52749703e+00, 8.15297419e+00, 3.78580193e+00],
...,
[4.50933030e-01, 1.66026471e+00, 2.31401703e-03, ...,
1.09300363e+00, 6.65094644e+00, 4.97810435e+00],
[4.37652142e-01, 1.63357480e+00, 0.00000000e+00, ...,
1.10110893e+00, 6.40170274e+00, 4.70997527e+00],
[4.53147239e-01, 1.61323801e+00, 0.00000000e+00, ...,
1.12058997e+00, 6.11867530e+00, 4.58348178e+00]]),
array([[1.32868115, 2.12926815, 0. , ..., 4.09773444, 5.30060277,
3.05137978],
[1.32861755, 2.07927585, 0. , ..., 4.36522497, 5.62684086,
2.87298235],
[1.33809028, 1.99189251, 0. , ..., 4.6801013 , 6.1063259 ,
2.73096118],
...,
[0.53948484, 2.50920684, 0.0324228 , ..., 1.57756252, 6.98234852,
6.4339376 ],
[0.84910785, 2.47719282, 0.02986112, ..., 1.57858013, 6.75925197,
6.26800439],
[1.1696554 , 2.44401045, 0.02740604, ..., 1.55656848, 6.5662749 ,
6.12952306]]),
array([[1.83026658, 2.89786648, 0.01238875, ..., 3.42659485, 7.43596097,
2.78010558],
[1.87113689, 2.85129248, 0.0179895 , ..., 3.63794495, 7.71135873,
2.70572722],
[1.93228989, 2.75770974, 0.0208503 , ..., 3.90003921, 8.07521642,
2.71093846],
...,
[0. , 2.57867877, 0.01578481, ..., 1.44998852, 6.80591886,
6.47795476],
[0.19124066, 2.54586221, 0.01243166, ..., 1.46874355, 6.38811294,
6.17814791],
[0.47813047, 2.51529999, 0.00917329, ..., 1.46891848, 6.02969223,
5.97095453]]),
array([[1.9416086 , 2.42133606, 0.86338133, ..., 5.35384858, 6.70080868,
4.29013198],
[1.97087321, 2.39035427, 0.85686047, ..., 5.62125283, 6.96060418,
4.32368153],
[2.01667653, 2.31033224, 0.88166271, ..., 5.92844358, 7.34330331,
4.41364172],
...,
[0.0764734 , 1.57251631, 0. , ..., 1.30439539, 5.15303171,
6.09566153],
[0.03649258, 1.54394196, 0. , ..., 1.31405876, 5.05803727,
5.32855955],
[0.02860991, 1.52325085, 0. , ..., 1.31954585, 4.95890566,
4.6888808 ]]),
array([[4.50264575, 3.0473958 , 0. , ..., 3.77664342, 4.82276017,
3.96891115],
[4.6036379 , 2.9122038 , 0. , ..., 3.99162882, 5.09288913,
4.05945098],
[4.76084157, 2.71150284, 0. , ..., 4.29818973, 5.46867731,
4.20755552],
...,
[3.57022609, 3.78392319, 0.18609013, ..., 4.91904395, 3.26560234,
5.9342189 ],
[3.53519208, 3.69620776, 0.21343123, ..., 4.28930491, 3.51358813,
5.87994697],
[3.52373134, 3.61139404, 0.2468252 , ..., 3.72814995, 3.69477896,
5.89139005]]),
array([[4.57574732, 4.25799215, 0. , ..., 4.68823483, 7.15041235,
3.78997903],
[4.70575195, 4.18347285, 0. , ..., 4.9026551 , 7.33874228,
3.82085302],
[4.88357416, 3.98472463, 0. , ..., 5.18536445, 7.57254528,
3.89925563],
...,
[5.04012499, 3.05028925, 1.04576628, ..., 4.463408 , 4.08777883,
7.09953877],
[4.89375669, 2.99530784, 1.12774975, ..., 3.92522752, 4.12723537,
7.27925035],
[4.73680137, 2.94769843, 1.23111488, ..., 3.44807694, 4.09088263,
7.38160692]]),
array([[2.15897947, 9.8154201 , 0.09372694, ..., 4.52404371, 7.91885541,
2.82098138],
[2.21849681, 9.59948343, 0.09782157, ..., 4.75374915, 7.95619055,
2.72877097],
[2.2565024 , 9.32554096, 0.09495996, ..., 5.04022641, 8.06832556,
2.65361031],
...,
[8.10100998, 0.48622914, 0.01311323, ..., 1.84282486, 4.91192026,
4.20862197],
[7.73921621, 0.47653304, 0.01283395, ..., 1.8454342 , 4.86655246,
3.87443165],
[7.30570311, 0.47197036, 0.01224652, ..., 1.83171936, 4.75780871,
3.82232469]]),
array([[3.34328418e+00, 1.17676774e+01, 4.71686174e-02, ...,
5.35679864e+00, 5.57100418e+00, 2.42559063e+00],
[3.44503015e+00, 1.15188923e+01, 6.59448226e-02, ...,
5.64701765e+00, 5.69181812e+00, 2.41766917e+00],
[3.51481884e+00, 1.11431126e+01, 8.12708848e-02, ...,
5.96618530e+00, 5.92659355e+00, 2.52423146e+00],
...,
[1.48698204e+01, 1.08233972e+00, 2.36514707e-02, ...,
1.61866006e+00, 3.62240073e+00, 1.69374748e+01],
[1.42418312e+01, 1.07448057e+00, 1.58485509e-02, ...,
1.65756834e+00, 3.68645950e+00, 1.70149995e+01],
[1.34893907e+01, 1.07553825e+00, 7.65736131e-03, ...,
1.66532770e+00, 3.76341391e+00, 1.69507556e+01]]),
array([[ 2.67821417, 13.42372225, 0.02433626, ..., 3.09999727,
5.6052177 , 3.23921901],
[ 2.73206453, 13.06749136, 0.04269307, ..., 3.24568961,
5.7284136 , 3.30866723],
[ 2.74270472, 12.42984685, 0.05889785, ..., 3.46154202,
5.97174008, 3.44194659],
...,
[13.83799851, 1.11828423, 0.16196403, ..., 1.90356155,
5.63506374, 14.55483055],
[13.04943502, 1.13274905, 0.16608312, ..., 1.90148362,
5.56961723, 14.68698735],
[12.15317577, 1.15184345, 0.17248938, ..., 1.88802575,
5.4969095 , 14.77139523]]),
array([[3.74080213e+00, 2.46883419e+01, 0.00000000e+00, ...,
6.66515966e+00, 1.10044649e+01, 3.43306022e+00],
[3.67301181e+00, 2.41141611e+01, 2.53716630e-03, ...,
6.94676547e+00, 1.12694604e+01, 3.14510576e+00],
[3.59347449e+00, 2.33893523e+01, 9.19432870e-03, ...,
7.27525504e+00, 1.15971251e+01, 2.86037778e+00],
...,
[1.48293975e+01, 7.35671159e-01, 2.17196058e-02, ...,
2.27595728e+00, 8.77528208e+00, 1.51261496e+01],
[1.43519347e+01, 7.32073822e-01, 1.81035530e-02, ...,
2.30843876e+00, 8.18236738e+00, 1.36501256e+01],
[1.38897394e+01, 7.24610080e-01, 1.43236629e-02, ...,
2.31214774e+00, 7.54769369e+00, 1.23482067e+01]]),
array([[4.51133173e+00, 2.09269762e+01, 0.00000000e+00, ...,
3.75794269e+00, 7.13707745e+00, 4.36162369e+00],
[4.51775593e+00, 2.03410609e+01, 2.53716630e-03, ...,
3.86091994e+00, 7.46289994e+00, 4.22542083e+00],
[4.50345319e+00, 1.94842513e+01, 9.19432870e-03, ...,
4.05525734e+00, 7.88495047e+00, 4.07533153e+00],
...,
[1.98246859e+01, 7.13723674e-01, 2.17196058e-02, ...,
1.88511696e+00, 5.94574972e+00, 1.64070649e+01],
[1.92637503e+01, 7.15958312e-01, 1.81035530e-02, ...,
1.99609969e+00, 5.73556571e+00, 1.55607050e+01],
[1.86159993e+01, 7.21516413e-01, 1.43236629e-02, ...,
2.08674975e+00, 5.51692897e+00, 1.46869098e+01]]),
array([[3.99564552e+00, 2.17696806e+01, 0.00000000e+00, ...,
4.75447331e+00, 6.80027149e+00, 3.39785212e+00],
[4.01523751e+00, 2.13905609e+01, 2.53716630e-03, ...,
4.87861470e+00, 7.02366106e+00, 3.27109931e+00],
[4.00082658e+00, 2.07551246e+01, 9.19432870e-03, ...,
5.07768521e+00, 7.33883204e+00, 3.20833708e+00],
...,
[1.96315321e+01, 2.63834234e-01, 2.17196058e-02, ...,
1.96570686e+00, 5.61243417e+00, 1.53551635e+01],
[1.90122689e+01, 2.95282125e-01, 1.81035530e-02, ...,
2.07569981e+00, 5.53906167e+00, 1.40827962e+01],
[1.83018652e+01, 3.41108620e-01, 1.43236629e-02, ...,
2.16501977e+00, 5.41123008e+00, 1.29449909e+01]]),
array([[1.57207172, 6.19840013, 0.27291674, ..., 5.91585499, 9.25515762,
3.61493048],
[1.54349144, 6.10561019, 0.273218 , ..., 6.15112605, 9.32635988,
3.67897951],
[1.5159126 , 5.97673456, 0.2635708 , ..., 6.38537128, 9.42560506,
3.7956866 ],
...,
[3.23900688, 0.38748753, 0. , ..., 1.66261745, 2.66476343,
4.23968046],
[3.40517952, 0.36749353, 0. , ..., 1.72813558, 2.60362273,
4.22643891],
[3.60357135, 0.35645421, 0. , ..., 1.76272796, 2.5308582 ,
4.32764442]]),
array([[2.99763592, 4.21859113, 0. , ..., 3.86406795, 7.04997428,
5.0459779 ],
[2.96540242, 4.12025496, 0. , ..., 4.1685265 , 7.38252215,
4.96299334],
[2.93577237, 4.01782511, 0. , ..., 4.59804212, 7.86399711,
4.86585544],
...,
[8.07341909, 0.06373871, 0.03792122, ..., 2.8212614 , 8.14131967,
9.75202597],
[7.66650456, 0. , 0.03588885, ..., 2.40223413, 7.64822276,
9.00888236],
[7.23770398, 0. , 0.03409742, ..., 2.05139516, 7.23349955,
8.19527911]]),
array([[2.80100784e+00, 4.39624488e+00, 0.00000000e+00, ...,
6.32747828e+00, 8.12373257e+00, 4.66672027e+00],
[2.82358995e+00, 4.33238434e+00, 2.53716630e-03, ...,
6.57664030e+00, 8.34962689e+00, 4.66190802e+00],
[2.83717001e+00, 4.22647197e+00, 9.19432870e-03, ...,
6.87448837e+00, 8.66938763e+00, 4.67183831e+00],
...,
[1.08623510e+01, 0.00000000e+00, 2.17196058e-02, ...,
3.69661552e+00, 7.05302934e+00, 6.81355294e+00],
[1.08496465e+01, 0.00000000e+00, 1.81035530e-02, ...,
3.27034629e+00, 6.49292639e+00, 6.29902832e+00],
[1.07398737e+01, 0.00000000e+00, 1.43236629e-02, ...,
2.90324026e+00, 6.04882393e+00, 5.83036094e+00]]),
array([[ 2.11831784, 10.69419042, 0.21505423, ..., 5.07913508,
8.94422957, 2.63084358],
[ 2.16348177, 10.45795399, 0.24262466, ..., 5.3451092 ,
9.03443795, 2.53770534],
[ 2.18308878, 10.17072963, 0.27470865, ..., 5.67611045,
9.16097271, 2.49429468],
...,
[ 8.8247157 , 0. , 0.0367272 , ..., 1.8818035 ,
4.6293494 , 9.0259091 ],
[ 8.4390372 , 0. , 0.02474601, ..., 1.88137858,
4.4051204 , 8.88185163],
[ 7.98817245, 0. , 0.01309776, ..., 1.86527967,
4.17928903, 8.81192185]]),
array([[3.39629665e+00, 7.00463819e+00, 0.00000000e+00, ...,
5.28191136e+00, 6.12543648e+00, 2.91734980e+00],
[3.46011408e+00, 6.69053997e+00, 2.53716630e-03, ...,
5.51170708e+00, 6.04945897e+00, 3.07804423e+00],
[3.50061814e+00, 6.21685457e+00, 9.19432870e-03, ...,
5.76270515e+00, 6.07062752e+00, 3.38514438e+00],
...,
[1.39221921e+01, 2.33137605e-01, 2.17196058e-02, ...,
1.70014312e+00, 4.54590576e+00, 1.41181193e+01],
[1.33655870e+01, 1.97628563e-01, 1.81035530e-02, ...,
1.72830456e+00, 4.64804468e+00, 1.40310547e+01],
[1.27224701e+01, 1.67153771e-01, 1.43236629e-02, ...,
1.73559402e+00, 4.69277745e+00, 1.39176802e+01]]),
array([[2.92818873e+00, 8.88511777e+00, 0.00000000e+00, ...,
6.08230196e+00, 6.32559883e+00, 4.02829268e+00],
[2.95725184e+00, 8.67118431e+00, 2.53716630e-03, ...,
6.37969174e+00, 6.23034686e+00, 4.21944934e+00],
[2.95555665e+00, 8.35423800e+00, 9.19432870e-03, ...,
6.69593092e+00, 6.21914291e+00, 4.50072967e+00],
...,
[1.31855439e+01, 0.00000000e+00, 2.17196058e-02, ...,
1.22244730e+00, 4.85320541e+00, 1.48812146e+01],
[1.25215927e+01, 0.00000000e+00, 1.81035530e-02, ...,
1.29120900e+00, 4.89898753e+00, 1.47732107e+01],
[1.17752762e+01, 0.00000000e+00, 1.43236629e-02, ...,
1.33721804e+00, 4.89353910e+00, 1.45994571e+01]]),
array([[2.1661972 , 2.5235727 , 0.27751269, ..., 4.69057111, 7.93697833,
3.59930798],
[2.18486393, 2.52532536, 0.27881646, ..., 4.82509464, 8.21048353,
3.66142442],
[2.22452177, 2.47239791, 0.28409345, ..., 5.00727729, 8.56381165,
3.79576044],
...,
[0.34041494, 2.02875002, 0. , ..., 1.4434876 , 5.42089901,
5.39462102],
[0.29190025, 2.00812064, 0. , ..., 1.44441935, 5.15215546,
5.06709833],
[0.28235252, 1.99189339, 0. , ..., 1.46256851, 4.90635372,
4.85216018]]),
array([[4.38094072, 1.34786396, 0.13763296, ..., 2.49438556, 6.78491403,
3.80264262],
[4.50959886, 1.30630662, 0.15525052, ..., 2.60091092, 7.02911298,
3.76431376],
[4.68635402, 1.23683753, 0.17954843, ..., 2.81844402, 7.36940474,
3.75646871],
...,
[4.20833187, 0.82642126, 0.05377715, ..., 3.05182198, 5.4383248 ,
7.08909981],
[4.12397487, 0.8117322 , 0.04669348, ..., 2.71974603, 5.34879127,
7.04697162],
[4.03982124, 0.79767332, 0.04127021, ..., 2.44698875, 5.22422725,
6.98704441]]),
array([[4.38637327, 3.50000409, 0.03681084, ..., 5.12879799, 5.13639474,
4.43479535],
[4.49722209, 3.44707267, 0. , ..., 5.40471333, 5.35645847,
4.53196139],
[4.66072004, 3.32217822, 0. , ..., 5.72045168, 5.70216571,
4.69152173],
...,
[3.75961589, 1.47985399, 0. , ..., 2.64707505, 4.32836776,
6.27973819],
[3.76004006, 1.46930674, 0. , ..., 2.44136646, 4.51775604,
5.64400466],
[3.78102941, 1.46087087, 0. , ..., 2.2445324 , 4.62990181,
5.12516763]]),
array([[ 1.67284766, 3.78310941, 1.34461666, ..., 6.64526805,
9.66530357, 4.36192764],
[ 1.62601009, 3.79168152, 1.31400528, ..., 6.92963131,
9.86429654, 4.36435343],
[ 1.57377631, 3.74955393, 1.28322386, ..., 7.2400401 ,
10.08464521, 4.37598207],
...,
[ 4.92935082, 0.88325087, 0. , ..., 0.85475323,
3.48216632, 5.43756607],
[ 4.97123288, 0.8454362 , 0. , ..., 0.9587218 ,
3.35247083, 5.11855388],
[ 5.0329417 , 0.81946136, 0. , ..., 1.05341164,
3.18709978, 4.82700983]]),
array([[ 0.99412432, 4.8576627 , 0.41105709, ..., 7.87827589,
10.57115949, 4.37378964],
[ 0.92491034, 4.74441713, 0.35794296, ..., 8.16607315,
10.8166572 , 4.31831125],
[ 0.85592805, 4.58619942, 0.30297457, ..., 8.45338379,
11.11853786, 4.24114624],
...,
[ 2.41458238, 0.91065277, 0.25655941, ..., 1.05618391,
4.8404833 , 5.71858979],
[ 2.9340891 , 0.89234805, 0.28052707, ..., 1.14284711,
4.54196809, 5.64482516],
[ 3.51260809, 0.87418824, 0.3151522 , ..., 1.22419 ,
4.22941372, 5.55370042]]),
array([[1.63247861, 5.37268842, 0.04003896, ..., 5.89955253, 7.92202996,
3.90887513],
[1.54792453, 5.24590515, 0.03223027, ..., 6.12136341, 8.07823884,
3.9661222 ],
[1.48386335, 5.02671679, 0.02696348, ..., 6.40447895, 8.27045225,
4.05843654],
...,
[2.53151947, 1.71243148, 0.04248903, ..., 1.25243942, 2.34441258,
5.2479366 ],
[3.34172802, 1.6931153 , 0.0280941 , ..., 1.25729113, 2.29428795,
5.48380539],
[4.24959854, 1.67676797, 0.0183203 , ..., 1.28376154, 2.2733006 ,
5.67726384]]),
array([[ 3.03184698, 18.19051296, 0.02552699, ..., 4.86427384,
8.99050183, 4.45005706],
[ 3.04883382, 17.81001742, 0.02841429, ..., 5.02831042,
9.13128015, 4.55174229],
[ 3.06969161, 17.18216759, 0.03587687, ..., 5.26834167,
9.31502294, 4.65313397],
...,
[ 9.16915401, 0.36555593, 0. , ..., 2.2002979 ,
5.22188172, 6.88591782],
[ 9.22802914, 0.3876448 , 0. , ..., 2.22215568,
4.99499157, 6.82857821],
[ 9.26775192, 0.42019963, 0. , ..., 2.23403637,
4.73964451, 6.83331492]]),
array([[3.45888483e+00, 1.33433515e+01, 0.00000000e+00, ...,
4.64597508e+00, 8.47134784e+00, 4.26172369e+00],
[3.44282061e+00, 1.30802485e+01, 2.53716630e-03, ...,
4.80456913e+00, 8.63707514e+00, 4.13004876e+00],
[3.43120538e+00, 1.27721680e+01, 9.19432870e-03, ...,
5.04747755e+00, 8.88052890e+00, 3.95978156e+00],
...,
[1.09010035e+01, 4.74113707e-01, 2.17196058e-02, ...,
1.14869158e+00, 6.34260349e+00, 5.55917430e+00],
[1.07766459e+01, 4.49853643e-01, 1.81035530e-02, ...,
1.29143872e+00, 5.94902133e+00, 4.93485098e+00],
[1.06362968e+01, 4.30287939e-01, 1.43236629e-02, ...,
1.42506227e+00, 5.59734139e+00, 4.45018623e+00]]),
array([[3.59303699e+00, 1.36376132e+01, 0.00000000e+00, ...,
4.67695396e+00, 6.74986331e+00, 4.29853963e+00],
[3.59911852e+00, 1.33614176e+01, 2.53716630e-03, ...,
4.79942996e+00, 6.81525250e+00, 4.24087208e+00],
[3.60176847e+00, 1.29664756e+01, 9.19432870e-03, ...,
5.00080124e+00, 6.96547774e+00, 4.16197421e+00],
...,
[1.24119090e+01, 1.01097213e+00, 2.17196058e-02, ...,
7.85695175e-01, 4.86564806e+00, 5.24116755e+00],
[1.21151192e+01, 9.62014863e-01, 1.81035530e-02, ...,
9.89602689e-01, 4.80097330e+00, 4.71250606e+00],
[1.17685798e+01, 9.22474453e-01, 1.43236629e-02, ...,
1.18517990e+00, 4.72085365e+00, 4.36203982e+00]]),
array([[3.83690411e+00, 3.01324473e+01, 0.00000000e+00, ...,
6.45954620e+00, 1.00985423e+01, 4.04038690e+00],
[3.80690531e+00, 2.95470671e+01, 0.00000000e+00, ...,
6.73224780e+00, 1.04342271e+01, 4.05965009e+00],
[3.77360588e+00, 2.88660519e+01, 0.00000000e+00, ...,
7.02779529e+00, 1.08846376e+01, 4.13359498e+00],
...,
[1.48139660e+01, 0.00000000e+00, 2.28058012e-02, ...,
2.48588666e+00, 8.68580680e+00, 1.19128188e+01],
[1.47507998e+01, 0.00000000e+00, 2.01942520e-02, ...,
2.48328402e+00, 8.22786119e+00, 1.09379110e+01],
[1.46854196e+01, 0.00000000e+00, 1.81018487e-02, ...,
2.44746309e+00, 7.70270701e+00, 1.01114261e+01]]),
array([[4.16262155e+00, 1.33158070e+01, 2.66459135e-02, ...,
4.67075948e+00, 7.75591225e+00, 5.40562174e+00],
[4.02922599e+00, 1.30320370e+01, 3.06346476e-02, ...,
4.92589047e+00, 7.85186725e+00, 5.50559104e+00],
[3.86049775e+00, 1.25184081e+01, 3.60075809e-02, ...,
5.19227871e+00, 8.08240259e+00, 5.65126643e+00],
...,
[2.62708129e+01, 9.57655412e-01, 3.22425779e-03, ...,
1.85271185e+00, 7.25946058e+00, 1.85697925e+01],
[2.64174054e+01, 9.36369282e-01, 0.00000000e+00, ...,
1.85983944e+00, 7.08218548e+00, 1.74764932e+01],
[2.64651754e+01, 9.27900269e-01, 0.00000000e+00, ...,
1.83158144e+00, 6.84042555e+00, 1.63048872e+01]]),
array([[4.81486559e+00, 9.87981058e+00, 0.00000000e+00, ...,
3.43231458e+00, 6.38913878e+00, 3.70414895e+00],
[4.75473338e+00, 9.54333934e+00, 2.53716630e-03, ...,
3.64199351e+00, 6.43780807e+00, 3.74391613e+00],
[4.66258347e+00, 9.15017896e+00, 9.19432870e-03, ...,
3.90434861e+00, 6.60395858e+00, 3.87585213e+00],
...,
[2.68888276e+01, 7.66918045e-01, 2.17196058e-02, ...,
1.77040600e+00, 7.44149579e+00, 1.92274424e+01],
[2.67978171e+01, 7.15036519e-01, 1.81035530e-02, ...,
1.74380444e+00, 7.23225781e+00, 1.90728108e+01],
[2.65891865e+01, 6.57957187e-01, 1.43236629e-02, ...,
1.70214068e+00, 6.99869161e+00, 1.87246751e+01]]),
array([[1.67174264, 2.43959536, 1.38538653, ..., 4.74685287, 7.31034704,
4.80007175],
[1.6111994 , 2.4414976 , 1.38506981, ..., 4.93464215, 7.59937403,
4.83467302],
[1.55285373, 2.40422794, 1.43514828, ..., 5.19880838, 7.91017006,
4.88803893],
...,
[4.78349357, 0.9658223 , 0.03373824, ..., 0.91599197, 2.94042606,
5.37951094],
[5.15032037, 0.9167522 , 0.02013679, ..., 0.93846803, 2.92093897,
4.67229156],
[5.55156386, 0.87893479, 0.01382974, ..., 0.98713214, 2.88443753,
4.0580335 ]]),
array([[3.60293753e+00, 5.57110984e+00, 4.24804875e-02, ...,
3.33662223e+00, 6.38483670e+00, 3.37936386e+00],
[3.70620919e+00, 5.53014842e+00, 4.62492253e-02, ...,
3.39525585e+00, 6.59610920e+00, 3.42988599e+00],
[3.75974752e+00, 5.44068683e+00, 4.87989165e-02, ...,
3.56151364e+00, 6.89272912e+00, 3.57635606e+00],
...,
[2.03940376e+01, 2.24743424e+00, 6.41023131e-03, ...,
4.77047485e+00, 4.45593648e+00, 8.26459937e+00],
[1.96912774e+01, 1.99264393e+00, 2.84434305e-03, ...,
4.16803418e+00, 4.48251246e+00, 8.49483508e+00],
[1.87424474e+01, 1.77347861e+00, 0.00000000e+00, ...,
3.66423079e+00, 4.46146892e+00, 8.61579689e+00]]),
array([[4.48606190e+00, 3.36537667e+00, 5.44747418e-03, ...,
3.46376010e+00, 6.16735995e+00, 2.54739909e+00],
[4.63929197e+00, 3.36762284e+00, 1.53812176e-02, ...,
3.52081867e+00, 6.34841022e+00, 2.60437515e+00],
[4.75963250e+00, 3.39595169e+00, 2.28532473e-02, ...,
3.70965668e+00, 6.61248367e+00, 2.78285954e+00],
...,
[2.42119706e+01, 3.17126577e+00, 3.09260242e-02, ...,
7.36132789e+00, 3.84497885e+00, 6.71261176e+00],
[2.42757677e+01, 2.84246759e+00, 2.68575739e-02, ...,
6.31567700e+00, 3.91876337e+00, 7.05351891e+00],
[2.40203684e+01, 2.55401811e+00, 2.29710782e-02, ...,
5.41976158e+00, 3.95396546e+00, 7.38299038e+00]]),
array([[ 1.70134116, 5.6116097 , 0.11133268, ..., 4.78765838,
10.21658062, 5.39524485],
[ 1.6854092 , 5.53368572, 0.13181389, ..., 5.07415588,
10.32989929, 5.36677006],
[ 1.64716838, 5.40067383, 0.15416966, ..., 5.395865 ,
10.4240818 , 5.27879445],
...,
[ 8.98838016, 0.25537174, 0.07603432, ..., 1.68785227,
2.19851495, 6.57151886],
[ 9.06553622, 0.25267944, 0.07104552, ..., 1.6818297 ,
1.97559738, 6.35830153],
[ 9.06332419, 0.25738245, 0.06729679, ..., 1.65127335,
1.79747874, 6.08655866]]),
array([[ 1.9514751 , 11.25891276, 0. , ..., 4.23848279,
6.75870998, 3.60931407],
[ 1.9390338 , 11.04312885, 0. , ..., 4.3585828 ,
6.8952171 , 3.62783242],
[ 1.90191424, 10.66768059, 0. , ..., 4.5551933 ,
7.1370725 , 3.64516701],
...,
[ 6.15278419, 0.44162324, 0.20153968, ..., 4.18000531,
5.43747847, 4.91493014],
[ 5.38906925, 0.44928765, 0.20844029, ..., 3.81328891,
5.45464084, 5.37732822],
[ 4.70250957, 0.46824083, 0.21886644, ..., 3.48552942,
5.38905539, 5.8080965 ]]),
array([[ 1.97153221, 11.46231957, 0. , ..., 5.5101095 ,
5.59557538, 4.61537225],
[ 1.94054883, 11.21265552, 0. , ..., 5.62768543,
5.72792101, 4.74557023],
[ 1.8952984 , 10.94393417, 0. , ..., 5.78694283,
6.02259949, 4.86975252],
...,
[ 3.64269152, 0. , 0.23500717, ..., 4.37391474,
5.38156944, 6.44316101],
[ 2.81507962, 0. , 0.23250367, ..., 4.02819368,
5.45667659, 6.65390867],
[ 2.12866118, 0. , 0.23555779, ..., 3.71381023,
5.4806318 , 6.8613414 ]]),
array([[2.05982834, 3.55315018, 0.02431112, ..., 4.6352684 , 7.54791175,
4.38159168],
[2.10382514, 3.55145146, 0.01780008, ..., 4.84141765, 7.70290058,
4.41342408],
[2.16392467, 3.4808129 , 0.02475069, ..., 5.102272 , 7.96484493,
4.47150792],
...,
[0.4983875 , 1.03505283, 0.03059421, ..., 1.56252294, 5.19455662,
6.67031464],
[0.41750924, 1.03299587, 0.03364938, ..., 1.53423549, 5.1337303 ,
6.36873127],
[0.34947668, 1.03932293, 0.03888785, ..., 1.51362945, 5.02518762,
6.08087758]]),
array([[2.3835189 , 5.48120158, 0.09453257, ..., 4.4543095 , 6.37686628,
3.03691431],
[2.41877755, 5.39777116, 0.11964056, ..., 4.68202098, 6.54633137,
2.97125027],
[2.49025207, 5.20994187, 0.14240104, ..., 4.9329246 , 6.78412569,
2.96803844],
...,
[0. , 5.27189519, 0.04822969, ..., 1.5570349 , 4.28810627,
7.16803797],
[0.17076424, 5.20916718, 0.03978519, ..., 1.58762256, 4.07315739,
7.04921905],
[0.60095771, 5.14482828, 0.03131174, ..., 1.59278208, 3.94580987,
6.97517439]]),
array([[1.68019441e+00, 4.34201956e+00, 0.00000000e+00, ...,
4.08505276e+00, 7.74966418e+00, 3.08845590e+00],
[1.69190550e+00, 4.24427050e+00, 2.53716630e-03, ...,
4.30113748e+00, 8.07153916e+00, 3.06324689e+00],
[1.72129162e+00, 4.12280557e+00, 9.19432870e-03, ...,
4.54031319e+00, 8.46263140e+00, 3.11714767e+00],
...,
[9.07808269e-01, 4.02408239e+00, 2.17196058e-02, ...,
1.74685036e+00, 7.11249436e+00, 7.01093667e+00],
[1.33485468e+00, 3.95265906e+00, 1.81035530e-02, ...,
1.76927877e+00, 6.60604206e+00, 6.91223411e+00],
[1.77117647e+00, 3.88218905e+00, 1.43236629e-02, ...,
1.76052251e+00, 6.17114431e+00, 6.87694557e+00]]),
array([[2.24393100e+00, 1.47794056e+01, 1.89424935e-02, ...,
6.11974872e+00, 9.26545829e+00, 3.28014172e+00],
[2.27549767e+00, 1.44999369e+01, 2.42367198e-02, ...,
6.44984455e+00, 9.24959916e+00, 3.29530440e+00],
[2.28396850e+00, 1.40474917e+01, 2.96305044e-02, ...,
6.80377501e+00, 9.22861427e+00, 3.35122880e+00],
...,
[9.00328976e+00, 6.88677185e-01, 8.07273616e-03, ...,
2.06826476e+00, 4.07065056e+00, 7.48004349e+00],
[8.60092752e+00, 6.97498071e-01, 3.50362442e-03, ...,
2.07396814e+00, 3.88006245e+00, 7.58312824e+00],
[8.14321780e+00, 7.18219039e-01, 0.00000000e+00, ...,
2.04189170e+00, 3.67310366e+00, 7.69418279e+00]]),
array([[ 2.63004293, 13.15054245, 0.09711463, ..., 6.94348215,
8.11508685, 3.67999824],
[ 2.64710021, 12.83505346, 0.09139821, ..., 7.17856527,
8.18833389, 3.6659022 ],
[ 2.67520423, 12.47671897, 0.0879107 , ..., 7.42807873,
8.30170072, 3.66647328],
...,
[ 4.90074016, 0.6410302 , 0. , ..., 0.90121902,
4.1719555 , 7.99149385],
[ 4.7924782 , 0.57817534, 0. , ..., 1.14899621,
4.08015955, 7.74954519],
[ 4.66974407, 0.52326115, 0. , ..., 1.35464352,
3.95994785, 7.62596348]]),
array([[ 2.2531288 , 13.11517962, 0.02274553, ..., 5.94163294,
8.37941539, 4.20620757],
[ 2.26076089, 12.88201834, 0.03129889, ..., 6.13645628,
8.38773498, 4.15189449],
[ 2.27240023, 12.57959067, 0.03784419, ..., 6.35989021,
8.40229213, 4.08854187],
...,
[ 4.35778433, 1.10009666, 0.03987867, ..., 0.83875578,
2.71887398, 7.97068796],
[ 4.15192693, 1.05363283, 0.03594699, ..., 1.07753434,
2.62201918, 7.27308466],
[ 3.91167358, 1.01638026, 0.03260308, ..., 1.2801305 ,
2.54708774, 6.73945067]]),
array([[4.00858119e+00, 3.24667273e+01, 0.00000000e+00, ...,
5.51903149e+00, 8.31040594e+00, 5.07776173e+00],
[3.99378711e+00, 3.18997727e+01, 2.53716630e-03, ...,
5.81823402e+00, 8.69463831e+00, 4.91123461e+00],
[3.97015608e+00, 3.11306913e+01, 9.19432870e-03, ...,
6.21668276e+00, 9.19759666e+00, 4.70863538e+00],
...,
[1.62127227e+01, 6.04063832e-02, 2.17196058e-02, ...,
2.33801702e+00, 7.82546582e+00, 1.26572846e+01],
[1.60127366e+01, 8.20528095e-02, 1.81035530e-02, ...,
2.28502341e+00, 7.39859480e+00, 1.09883642e+01],
[1.57853376e+01, 1.17971467e-01, 1.43236629e-02, ...,
2.22443323e+00, 6.97296503e+00, 9.52077959e+00]]),
array([[4.59636253e+00, 1.51228032e+01, 0.00000000e+00, ...,
5.79748710e+00, 8.35883378e+00, 4.28791577e+00],
[4.52867166e+00, 1.47691628e+01, 0.00000000e+00, ...,
6.11891130e+00, 8.38398476e+00, 4.38628866e+00],
[4.41620591e+00, 1.41501404e+01, 0.00000000e+00, ...,
6.44243657e+00, 8.46526082e+00, 4.58615337e+00],
...,
[2.96415667e+01, 1.10444900e+00, 4.60976007e-03, ...,
2.18870430e+00, 7.34412075e+00, 2.39808256e+01],
[2.97225981e+01, 1.08855059e+00, 3.28610127e-03, ...,
2.13545699e+00, 6.98121979e+00, 2.31699312e+01],
[2.96368084e+01, 1.08261995e+00, 2.04614425e-03, ...,
2.04906931e+00, 6.60126727e+00, 2.21936871e+01]]),
array([[4.74403555e+00, 1.52439367e+01, 0.00000000e+00, ...,
4.48828062e+00, 7.36174411e+00, 4.71413619e+00],
[4.70133414e+00, 1.47983994e+01, 2.53716630e-03, ...,
4.72801597e+00, 7.41621859e+00, 4.76905247e+00],
[4.62126209e+00, 1.41699396e+01, 9.19432870e-03, ...,
4.98328176e+00, 7.55128599e+00, 4.86602547e+00],
...,
[2.62973034e+01, 7.35078780e-01, 2.17196058e-02, ...,
1.89411275e+00, 7.06295086e+00, 1.91460362e+01],
[2.59438903e+01, 7.09686750e-01, 1.81035530e-02, ...,
1.90406942e+00, 6.86475533e+00, 1.87175930e+01],
[2.54743911e+01, 6.79244603e-01, 1.43236629e-02, ...,
1.87894187e+00, 6.60764332e+00, 1.80835124e+01]]),
array([[1.97422741, 2.38783835, 0.42322415, ..., 3.2127826 , 7.869418 ,
3.78621434],
[2.00308382, 2.35050463, 0.44421538, ..., 3.36643677, 8.06688537,
3.85497313],
[2.04269174, 2.29734954, 0.49496963, ..., 3.59872044, 8.33313342,
3.99132756],
...,
[1.44845741, 1.54287165, 0.07724476, ..., 1.49748927, 4.99536572,
6.3051305 ],
[1.37473172, 1.51138651, 0.06266573, ..., 1.46209031, 4.83799339,
6.17096632],
[1.31491507, 1.48430523, 0.0530803 , ..., 1.44056247, 4.66360984,
6.09286264]]),
array([[3.94394704, 3.93257544, 0. , ..., 6.17684501, 5.96283743,
3.95408926],
[4.05711065, 3.82142316, 0. , ..., 6.3950154 , 6.19994984,
3.94489489],
[4.20180031, 3.61165135, 0. , ..., 6.66180343, 6.54214899,
3.958892 ],
...,
[6.1202223 , 2.64841569, 0.6230479 , ..., 5.2232439 , 4.7492793 ,
5.35138759],
[6.07401185, 2.6137153 , 0.68437808, ..., 4.58533579, 4.76050779,
5.36996563],
[5.99550454, 2.58396006, 0.76123947, ..., 4.02262358, 4.73998794,
5.39107743]]),
array([[4.12986839, 6.4913873 , 0.22868276, ..., 4.34802236, 6.61727375,
4.61104453],
[4.22044088, 6.31776952, 0.24556686, ..., 4.50874806, 6.81464986,
4.66799884],
[4.3535659 , 6.01535579, 0.26648252, ..., 4.77429244, 7.09921205,
4.7366995 ],
...,
[5.40723976, 3.28316801, 0.13025596, ..., 5.44040271, 4.47465323,
6.29153047],
[5.49656205, 3.23768612, 0.12687049, ..., 4.72819993, 4.58534355,
6.2952054 ],
[5.58692604, 3.1980471 , 0.12690917, ..., 4.11358187, 4.59866534,
6.27492379]]),
array([[2.13396784, 2.20113094, 0.136431 , ..., 5.68870401, 5.99544453,
4.33625569],
[2.16594695, 2.16071201, 0.12639135, ..., 5.97966491, 6.25539887,
4.40302177],
[2.21821366, 2.07971905, 0.12936876, ..., 6.27754827, 6.60989658,
4.51553512],
...,
[0.10985587, 2.28914973, 0. , ..., 1.36497315, 4.44881146,
5.43796407],
[0.0401704 , 2.25625577, 0. , ..., 1.41480045, 4.27535006,
4.79665301],
[0. , 2.22771254, 0. , ..., 1.43584947, 4.17678356,
4.28862017]]),
array([[4.37317413, 4.53820267, 0.15455207, ..., 6.06036476, 5.86743565,
4.35083265],
[4.49454727, 4.51582299, 0.17028971, ..., 6.36131612, 6.07608099,
4.46587467],
[4.65902769, 4.39051118, 0.2022707 , ..., 6.68927476, 6.37555311,
4.64074303],
...,
[5.36186128, 0.92327553, 0.30878925, ..., 2.83115382, 5.24944865,
6.29573774],
[5.26566452, 0.93236363, 0.32664867, ..., 2.59146775, 5.23305874,
5.93384769],
[5.15772764, 0.9464536 , 0.35144171, ..., 2.3658779 , 5.17456636,
5.66772745]]),
array([[3.78697873, 4.72092258, 0. , ..., 4.86341036, 6.27067703,
4.33081914],
[3.87025014, 4.53797101, 0. , ..., 5.15396468, 6.52275546,
4.43755335],
[3.99047086, 4.28484563, 0. , ..., 5.48451351, 6.86594672,
4.60175004],
...,
[3.40578233, 2.52517943, 0.02483981, ..., 2.5318884 , 4.32702386,
7.44492801],
[3.15031481, 2.48341153, 0.02296706, ..., 2.32764231, 4.37059484,
7.22186744],
[2.91565347, 2.44423286, 0.02158778, ..., 2.12939584, 4.36670433,
7.02386729]]),
array([[1.76857594, 1.91376944, 0.45307885, ..., 4.99054688, 6.01567197,
3.98106175],
[1.77033674, 1.89129592, 0.44970248, ..., 5.22395287, 6.09303556,
4.01107057],
[1.78052485, 1.84123543, 0.47529364, ..., 5.48773383, 6.24091612,
4.09208138],
...,
[1.08205022, 1.21927536, 0.01061059, ..., 1.63152627, 3.2850001 ,
4.67774648],
[0.96708528, 1.18982828, 0. , ..., 1.61599287, 3.46980221,
4.3926373 ],
[0.87434741, 1.16771765, 0. , ..., 1.59301522, 3.58590972,
4.13722161]]),
array([[2.16984876, 4.48525848, 0.17476391, ..., 5.06111847, 8.1032136 ,
4.20299582],
[2.19506273, 4.38331281, 0.16769719, ..., 5.2329397 , 8.39595045,
4.22925919],
[2.23148794, 4.28299785, 0.15406224, ..., 5.45956587, 8.7735848 ,
4.2772233 ],
...,
[6.44960573, 1.76321386, 0.08150546, ..., 1.68716222, 4.98722882,
5.42716419],
[7.36065084, 1.73093303, 0.04830251, ..., 1.65305933, 4.76275138,
5.48425416],
[8.29885561, 1.69946206, 0.02292283, ..., 1.63654123, 4.552753 ,
5.51030344]]),
array([[1.71497468e+00, 6.31838685e+00, 0.00000000e+00, ...,
6.32488962e+00, 7.57468653e+00, 4.52793954e+00],
[1.64326007e+00, 6.21976775e+00, 0.00000000e+00, ...,
6.65748308e+00, 7.79952800e+00, 4.46883335e+00],
[1.57361560e+00, 6.03587880e+00, 0.00000000e+00, ...,
7.02185504e+00, 8.14917665e+00, 4.36331392e+00],
...,
[6.76200730e+00, 1.87959685e+00, 2.35140935e-02, ...,
1.51148048e+00, 4.81847151e+00, 4.27912940e+00],
[7.54633061e+00, 1.85902532e+00, 3.11131938e-03, ...,
1.49796117e+00, 4.71365140e+00, 4.41783148e+00],
[8.39558608e+00, 1.84417967e+00, 0.00000000e+00, ...,
1.47489105e+00, 4.60438333e+00, 4.51663551e+00]]),
array([[2.31002186e+00, 1.07825307e+01, 1.45709582e-01, ...,
6.51597704e+00, 7.41970030e+00, 2.97310509e+00],
[2.38012619e+00, 1.05464839e+01, 1.56103935e-01, ...,
6.87920709e+00, 7.54717898e+00, 2.93804823e+00],
[2.42339477e+00, 1.02476466e+01, 1.60117137e-01, ...,
7.26725402e+00, 7.72874314e+00, 2.94825256e+00],
...,
[9.87634695e+00, 2.93613147e-01, 1.56878043e-02, ...,
1.77420911e+00, 3.88191946e+00, 3.81132648e+00],
[9.49697922e+00, 2.87768803e-01, 1.23756708e-02, ...,
1.81666299e+00, 3.77174619e+00, 3.43366257e+00],
[9.02746987e+00, 2.85962281e-01, 8.72620507e-03, ...,
1.81817501e+00, 3.67745644e+00, 3.29885198e+00]]),
array([[3.21277515e+00, 1.24474688e+01, 0.00000000e+00, ...,
7.80131872e+00, 1.08301836e+01, 4.04235072e+00],
[3.26720452e+00, 1.22425491e+01, 2.53716630e-03, ...,
8.04026552e+00, 1.08924916e+01, 4.09210579e+00],
[3.34094458e+00, 1.19442613e+01, 9.19432870e-03, ...,
8.26612675e+00, 1.09810290e+01, 4.14701895e+00],
...,
[4.87413482e+00, 0.00000000e+00, 2.17196058e-02, ...,
1.19605675e+00, 5.28689707e+00, 9.92913314e+00],
[4.64222428e+00, 0.00000000e+00, 1.81035530e-02, ...,
1.43702064e+00, 4.89903843e+00, 1.01372313e+01],
[4.41654794e+00, 0.00000000e+00, 1.43236629e-02, ...,
1.62903346e+00, 4.51813033e+00, 1.02985446e+01]]),
array([[ 3.11344004, 12.46189015, 0.02772509, ..., 6.80644969,
9.06736874, 3.90180133],
[ 3.15640443, 12.20726933, 0.04160669, ..., 6.9821497 ,
8.98179516, 3.90316852],
[ 3.22049525, 11.93796023, 0.05277182, ..., 7.16108983,
8.91494932, 3.92174157],
...,
[ 4.23114269, 0.27683873, 0.0575708 , ..., 1.53946484,
4.87649074, 7.29790621],
[ 4.00087071, 0.2387514 , 0.05481406, ..., 1.71666283,
4.76616928, 6.80951323],
[ 3.76740791, 0.20743961, 0.05251282, ..., 1.8589403 ,
4.58198085, 6.47131632]]),
array([[1.53520051, 4.59404561, 0.69650994, ..., 4.6652168 , 7.7706666 ,
3.71935325],
[1.49356376, 4.62075778, 0.75640675, ..., 4.75847938, 8.02766997,
3.670165 ],
[1.45206869, 4.59225149, 0.84382598, ..., 4.92248226, 8.3239652 ,
3.66381708],
...,
[3.04199233, 1.04870198, 0.15385666, ..., 0.61562018, 3.23333672,
5.53329184],
[3.10889551, 1.01196608, 0.13424563, ..., 0.73029641, 3.17196098,
4.98010311],
[3.20311514, 0.98977805, 0.11862781, ..., 0.87228855, 3.1032025 ,
4.54317915]]),
array([[ 1.88972309, 9.17517381, 0.13348495, ..., 5.57425973,
9.71933929, 3.9532184 ],
[ 1.83549704, 9.06455493, 0.08798494, ..., 5.78269283,
9.95784773, 3.95449933],
[ 1.79743651, 8.90205485, 0.04709913, ..., 6.03073551,
10.23432308, 3.97450476],
...,
[ 3.69991859, 0.82953324, 0. , ..., 1.18572003,
4.36306046, 4.53854002],
[ 4.34898337, 0.81648911, 0. , ..., 1.22989548,
4.24057743, 4.4180756 ],
[ 5.08251165, 0.81189869, 0. , ..., 1.27918417,
4.04256377, 4.35756982]]),
array([[ 2.06554123, 6.18537404, 0.06868147, ..., 3.57369853,
10.15436423, 4.29274563],
[ 2.04751501, 6.09363922, 0.0518833 , ..., 3.73498005,
10.42118666, 4.25516171],
[ 2.04551634, 5.85653196, 0.03305173, ..., 3.99129283,
10.68487807, 4.20883976],
...,
[ 4.47033693, 2.51625154, 0.02424907, ..., 1.38346883,
4.11185921, 3.28459443],
[ 5.19092824, 2.48853213, 0. , ..., 1.34324916,
3.8371583 , 2.99553942],
[ 5.98113628, 2.47290815, 0. , ..., 1.3295015 ,
3.54618785, 2.80586038]]),
array([[2.46287652, 3.25245862, 0.12168607, ..., 5.06595496, 6.63756555,
4.23676053],
[2.51827149, 3.20849835, 0.1294703 , ..., 5.30109212, 6.94258128,
4.34124277],
[2.6019945 , 3.11771282, 0.14742583, ..., 5.57130947, 7.36360535,
4.4895964 ],
...,
[0. , 1.41923997, 0.06113549, ..., 1.42824865, 5.96911824,
6.09373681],
[0. , 1.4011919 , 0.05727268, ..., 1.44332079, 5.81758357,
5.61914298],
[0. , 1.38900673, 0.05541362, ..., 1.45086154, 5.64973007,
5.2806425 ]]),
array([[1.1283109 , 3.72732308, 0.03317562, ..., 4.08434178, 7.98704752,
3.57730571],
[1.07401628, 3.67408496, 0.04209687, ..., 4.29024486, 8.2400712 ,
3.46852056],
[1.02082154, 3.57171438, 0.04908442, ..., 4.5438253 , 8.56850635,
3.38095036],
...,
[1.62773024, 2.00030449, 0.03265341, ..., 1.5264706 , 5.2175146 ,
7.28299232],
[1.73200003, 1.97452781, 0.02497668, ..., 1.51786737, 4.87984286,
7.02627609],
[1.79106034, 1.95285785, 0.01839627, ..., 1.50399782, 4.61014814,
6.79648345]]),
array([[2.15412789, 1.34814189, 0.27621233, ..., 4.71911224, 8.11097254,
2.61164005],
[2.1813918 , 1.31039605, 0.31358344, ..., 4.9602686 , 8.1979078 ,
2.57673621],
[2.22768334, 1.23655348, 0.34637494, ..., 5.22855979, 8.32726573,
2.65384469],
...,
[1.50099996, 3.92611469, 0.0766108 , ..., 1.60908892, 3.90096555,
8.00202838],
[1.59650011, 3.85414324, 0.05979798, ..., 1.62807999, 3.78877146,
7.72369301],
[1.68334604, 3.78309512, 0.04388734, ..., 1.62466173, 3.67344209,
7.53052016]]),
array([[ 4.47135775, 28.07050871, 0.05881318, ..., 5.25040788,
9.10934219, 4.40032477],
[ 4.53248333, 27.46785088, 0.05653304, ..., 5.52481732,
9.28146695, 4.38207769],
[ 4.59561374, 26.77239777, 0.05773507, ..., 5.87564411,
9.53314129, 4.35657564],
...,
[15.64284707, 0. , 0. , ..., 1.83179948,
5.193791 , 5.6583074 ],
[15.52282691, 0. , 0. , ..., 1.88077735,
5.00457638, 4.85246925],
[15.34645113, 0. , 0. , ..., 1.90491891,
4.77965455, 4.24236765]]),
array([[3.77340434e+00, 8.60491149e+00, 0.00000000e+00, ...,
4.40395695e+00, 7.52404721e+00, 3.63281784e+00],
[3.85673213e+00, 8.38078385e+00, 2.53716630e-03, ...,
4.61783086e+00, 7.50351614e+00, 3.44206820e+00],
[3.93039858e+00, 8.04547212e+00, 9.19432870e-03, ...,
4.90971440e+00, 7.50662560e+00, 3.25699962e+00],
...,
[1.28406137e+01, 0.00000000e+00, 2.17196058e-02, ...,
7.21028507e-01, 3.36880070e+00, 1.32955041e+01],
[1.24224972e+01, 0.00000000e+00, 1.81035530e-02, ...,
9.38760200e-01, 3.24690839e+00, 1.29036211e+01],
[1.19799399e+01, 0.00000000e+00, 1.43236629e-02, ...,
1.12317149e+00, 3.16452067e+00, 1.23950313e+01]]),
array([[4.79367478e+00, 9.72567097e+00, 0.00000000e+00, ...,
2.81425145e+00, 7.52085325e+00, 2.55881505e+00],
[4.97173763e+00, 9.44613190e+00, 2.53716630e-03, ...,
2.86060853e+00, 7.44644287e+00, 2.54471087e+00],
[5.16679166e+00, 9.05003080e+00, 9.19432870e-03, ...,
3.00095404e+00, 7.39437883e+00, 2.64470652e+00],
...,
[1.42206142e+01, 9.30888080e-01, 2.17196058e-02, ...,
1.13199235e+00, 4.76599983e+00, 1.33878178e+01],
[1.45671559e+01, 9.16308510e-01, 1.81035530e-02, ...,
1.33561520e+00, 4.76926291e+00, 1.32545969e+01],
[1.48746468e+01, 9.06497934e-01, 1.43236629e-02, ...,
1.51902492e+00, 4.68225627e+00, 1.31129016e+01]])]
print(len(times)) # Show the length of time
times[:10] # Look at the first 10 entries in time
61
[-50, -40, -30, -20, -10, 0, 10, 20, 30, 40]
The meaning of the times
length is a bit trickier to derive from the paper, but the documentation for exampleMat.mat
tells us that these times are in milliseconds (ms), and start 50 ms before the reach at time 0. A firing rate was sampled every 10 ms, so this is why these timestamps are 10 apart.
Visually explore the data#
Now that we understand the structure of the data, we can take a look at some of these trials. Below, we’ll create a firing rate plot for one trial at a time. In this plot, each neuron will be a different color.
data`
below (keeping in mind how many conditions we have in total as well as 0 indexing in Python!) to look through a few different trials for patterns.trial = data[25] # You can change the index here if you'd like to look through different trials.
def plotFiringRates(times,trial):
plt.plot(times,trial)
plt.xlabel('Time (ms)')
plt.ylabel('Firing Rate (Hz)')
plt.vlines(0,np.min(trial),np.max(trial),color='gray',linestyle='--')
plt.show()
plotFiringRates(times,trial)
As you can appreciate from this plot, it is hard to make much sense of what this population of neurons are doing. Some neurons respond to the plotted condition, but not others.
We could investigate what happens if we average across all of the neurons, and then plot to compare trials against one another. In this plot, each line is a different condition.
all_trials = np.zeros((61,108))
for idx,this_trial in enumerate(data):
trial_average = np.mean(this_trial,axis=1)
all_trials[:,idx] = trial_average
plotFiringRates(times,all_trials)
This is also not particularly informative! Clearly, neural activity increases overall when a monkey initiates a reach, but what does this tell us about neural coding?
Let’s do one final check, where we look at a single cell across multiple conditions. This is similar to Figure 2 of the paper, except we won’t color these by preparatory activity.
neuron
below (keeping in mind how many neurons we have in total as well as 0 indexing in Python!) to look through a few neurons for patterns.neuron = 200
trials_for_neuron = np.zeros((61,108))
for idx,this_trial in enumerate(data):
trials_for_neuron[:,idx] = this_trial[:,neuron]
plotFiringRates(times,trials_for_neuron)
In summary, we can learn a few things away from the data exploration above:
Neural activity increases overall when the monkey reaches.
Individual neurons show different patterns of responses to reaches. Some neurons increase their firing rate to any reach, others are more selective. The timing of their firing rate variation also varies after the reach.
jPCA#
Okay, enough of the old school, simple analyses! Below, we’ll use jPCA to retain information from each individual neuron and each condition, looking at how each neuron moves through state space over time. To create our jPCA plot, we’ll use the jPCA
package.
# Create a jPCA object
jpca = jPCA.JPCA(num_jpcs=6)
# Fit the jPCA object to data
projected, full_data_var, pca_var_capt, jpca_var_capt = jpca.fit(data, times=times, tstart=-50, tend=150)
# Plot the projected data
fig, axes = plt.subplots(1, 2, figsize=(10, 5))
plot_projections(projected, axis=axes[0], x_idx=0, y_idx=1) # Plot the first jPCA plane
plot_projections(projected, axis=axes[1], x_idx=2, y_idx=3) # Plot the second jPCA plane
axes[0].set_title('jPCA Plane 1')
axes[1].set_title('jPCA Plane 2')
plt.tight_layout()
plt.show()
Above, we’ve generated figures really similar to Figure 3. However, the utility of working with this data live is that we can change features of the analysis and observe how this changes the plots (and our interpretation of the data).
By default, the jPCA is fit to -50 ms to 150 ms of the data. Change
tend
to include more of the data in the analysis, and observe how this changes the PCA plots.Bonus: What dicates the coloring of the lines here? Dig into
utils
to find out.