Python 如何访问多个拆分阵列进行打印?

Python 如何访问多个拆分阵列进行打印?,python,arrays,plot,Python,Arrays,Plot,所以我从一大块数据开始:许多列,数千行,100个单独的度量。我把数据放在一个数组中,我使用split_数组将一个巨大的数组分割成100个不同的测量值。现在我需要在同一个图上绘制所有100个测量值。我的问题是我不确定如何访问拆分阵列。拆分阵列如下所示: [array([[21.4284003, 0, 1, 4.0482, 92.2, 230.6, 0, 0, ' NaN '], [21.4364002, 0, 1, 3.9745, 91.8, 240.9, 0, 0, ' NaN

所以我从一大块数据开始:许多列,数千行,100个单独的度量。我把数据放在一个数组中,我使用split_数组将一个巨大的数组分割成100个不同的测量值。现在我需要在同一个图上绘制所有100个测量值。我的问题是我不确定如何访问拆分阵列。拆分阵列如下所示:

[array([[21.4284003, 0, 1, 4.0482, 92.2, 230.6, 0, 0, ' NaN '],
        [21.4364002, 0, 1, 3.9745, 91.8, 240.9, 0, 0, ' NaN '],
        ...
        [21.4704002, 0, 1, 3.8645, 91.8, 240.9, 0, 0, ' NaN ']], dtype=object),
 array([[22.4958395, 1, 1, 4.5837, 90.2, 285.9, 0, 0, ' NaN '], so on]
import numpy as np
from matplotlib import pyplot as plt
data = [np.array([[21.4284003, 0, 1, 4.0482, 92.2, 230.6, 0, 0, ' NaN '],
                  [21.4364002, 0, 1, 3.9745, 91.8, 240.9, 0, 0, ' NaN '],
                  [21.4704002, 0, 1, 3.8645, 91.8, 240.9, 0, 0, ' NaN ']], dtype=object),
        np.array([[22.4958395, 1, 1, 4.5837, 90.2, 285.9, 0, 0, ' NaN '],
                  [22.5958395, 1, 1, 4.7837, 90.2, 285.9, 0, 0, ' NaN '],
                  [22.6958395, 1, 1, 4.9837, 90.2, 285.9, 0, 0, ' NaN ']], dtype=object)
                  ]
我只对绘制每个数组的第1列和第4列感兴趣,我使用了一些基本的绘图代码,如下所示

fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
time = split_array[:,0]
conductance = split_array[:,3]
ax.line(time, conductance)
plt.show()

当我运行这个程序时,我得到错误消息“列表索引必须是整数或切片,而不是元组”,错误指向第3行。我猜想每个数组都存储为元组,而split_数组[:,0]引用的是第一个数组,而不是每个数组中的第一列。我找不到有关绘制分割阵列的详细信息,因此非常感谢您的帮助。

不完全清楚您想做什么,但如果您的数据是这样的阵列列表:

[array([[21.4284003, 0, 1, 4.0482, 92.2, 230.6, 0, 0, ' NaN '],
        [21.4364002, 0, 1, 3.9745, 91.8, 240.9, 0, 0, ' NaN '],
        ...
        [21.4704002, 0, 1, 3.8645, 91.8, 240.9, 0, 0, ' NaN ']], dtype=object),
 array([[22.4958395, 1, 1, 4.5837, 90.2, 285.9, 0, 0, ' NaN '], so on]
import numpy as np
from matplotlib import pyplot as plt
data = [np.array([[21.4284003, 0, 1, 4.0482, 92.2, 230.6, 0, 0, ' NaN '],
                  [21.4364002, 0, 1, 3.9745, 91.8, 240.9, 0, 0, ' NaN '],
                  [21.4704002, 0, 1, 3.8645, 91.8, 240.9, 0, 0, ' NaN ']], dtype=object),
        np.array([[22.4958395, 1, 1, 4.5837, 90.2, 285.9, 0, 0, ' NaN '],
                  [22.5958395, 1, 1, 4.7837, 90.2, 285.9, 0, 0, ' NaN '],
                  [22.6958395, 1, 1, 4.9837, 90.2, 285.9, 0, 0, ' NaN ']], dtype=object)
                  ]
您需要迭代列表并绘制套件中的每个阵列:

fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
for a in data:
    time = a[:,0]
    conductance = a[:,3]
    ax.plot(time, conductance)
plt.show()

数据是数组的列表。您可以使用for循环迭代列表,并对for循环套件中的各个数组进行操作。