【问题标题】:Manipulating python lists. (accessing specific elements)操作 python 列表。 (访问特定元素)
【发布时间】:2015-10-05 19:02:08
【问题描述】:

我是一个这样填写列表(名为foo)的人:

foo = []

for index, elem in enumerate(alpha):
    if elem>0.00001:
        print (index,elem)
        foo.append([elem, myarray[index]])

现在,让我们看看foo[0] 包含什么:

output: [14601132722.531921, array([ 0.6135447, -0.874145 , -1.       ])

我真的希望能够以某种方式访问​​这些值中的每一个以进行进一步处理。到目前为止,我已经得到了这个 python 语言可能产生的每一个可能的错误。

或者更好的是,将这些值存储在一个普通的 Nx4 矩阵或数组中,无论他们在 python 中如何称呼它。

【问题讨论】:

  • 您是否要像字典一样设置它? 14601132722.531921 作为键,array([ 0.6135447, -0.874145 , -1. ] 作为值?然后访问每个值?还有什么是阿尔法?
  • 什么是myarrayalpha 是什么?

标签: python arrays list matrix indexing


【解决方案1】:

根据你得到的输出,我猜 myarray 实际上是一个二维 numpy 数组,形状为 Nx3

正如你所说-

或者更好的是,将这些值存储在普通 Nx4 矩阵或数组中

如果是这种情况,并且您希望废话只是一个列表列表,每个子列表都具有4 元素。您可以在内部循环中创建一个临时列表并使用 myarray[index] 对其进行扩展,使其成为 4 个元素,然后将其附加到 crap。示例 -

for index, elem in enumerate(alpha):
    if elem>0.00001:
        print (index,elem)
        temp = [elem]
        temp.extend(myarray[index])
        crap.append(temp)

【讨论】:

  • 这很酷。此外,我能够将其转换为 numpy 数组。谢谢。
猜你喜欢
  • 2020-04-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-05
  • 2018-09-12
  • 2015-04-19
  • 1970-01-01
  • 2011-07-21
相关资源
最近更新 更多