我想为我的 numpy 数组中最右边的列找到一个表达式。
它包含一个数字和一个元组。这是其中的一个元素:
str(my_list[0]) ='[0.04715440011642294\n
(array([-0.50099999, 0.056 , 1.61699998]),
0.046637045285032784)]'
我不确定如何最好地格式化它,但我至少可以清楚 \n 分隔元素,因此 my_list[0] 包含两个元素:0.04715440011642294 和 (array([-0.50099999, 0.056 , 1.61699998]), 0.046637045285032784)。
我想要的是包含元组内部所有第二个元素的列。因此,例如,如果第二个元素是
str(my_list[1]) = '[0.04740093197112796\n
(array([-0.505 , 0.058 , 1.61699998]),
0.047308142646754925)]'
那我想要
[0.046637045285032784, 0.047308142646754925]
如果我尝试str(my_list[:, 1::][0])
,我可以单独获得元组:
'[(array([-0.50099999, 0.056 , 1.61699998]), 0.046637045285032784)]'
但是,当我尝试使用与获取列表第二列相同的技术来访问元组的第二列时,它不起作用。
my_list[:, 1::][:, 1::]
具有正确的长度,但充满了空元素。我做了很多尝试来获得正确的语法,但我无法终生提取我想要的列。这尤其令人沮丧,因为我可以轻松键入my_list[:-1, 1::][0][0][1]
并获取我想要的列的第一个元素。当然,如果我能得到一个元素,我应该能够找到该列的表达式吗?