python教程—数组索引太多-Python实用宝典

python教程—数组索引太多

我知道有很多这样的线程,但它们都是非常简单的情况下,像3x3矩阵和类似的东西的解甚至不适用于我的情况。我试着画出G和l1的关系图(不是11,而是l1)数据在我从excel文件中加载的文件中。excel文件是14x250,所以有14个参数,每个参数有250个数据点。我有另一个用户(对Hugh Bothwell大喊)帮助我处理代码中的一个错误,但是现在又出现了另一个错误。

我知道有很多这样的线程,但它们都是非常简单的情况下,像3x3矩阵和类似的东西的解甚至不适用于我的情况。我试着画出G和l1的关系图(不是11,而是l1)数据在我从Excel文件中加载的文件中。Excel文件是14x250,所以有14个参数,每个参数有250个数据点。我有另一个用户(对Hugh Bothwell大喊)帮助我处理代码中的一个错误,但是现在又出现了另一个错误。

下面是我们要讨论的代码:

    # format for CSV file: header = ['l1', 'l2', 'l3', 'l4', 'l5', 'EI', 'S', 'P_right', 'P1_0', 'P3_0', 'w_left', 'w_right', 'G_left', 'G_right'] def loadfile(filename, skip=None, *args): skip = set(skip or []) with open(filename, *args) as f: cr = csv.reader(f, quoting=csv.QUOTE_NONNUMERIC) return np.array(row for i,row in enumerate(cr) if i not in skip) #plot data outputs_l1 = [loadfile('C:\Users\Chris\Desktop\Work\Python Stuff\BPCROOM - Shingles analysis\ERR analysis\l_1 analysis//BS(1) ERR analysis - l_1 - P_3 = {}.csv'.format(p)) for p in p3_arr] col = {name:i for i,name in enumerate(header)} fig = plt.figure() for data,color in zip(outputs_l1, colors): xs = data[:, col["l1" ]] gl = data[:, col["G_left" ]] * 1000.0 # column 12 gr = data[:, col["G_right"]] * 1000.0 # column 13 plt.plot(xs, gl, color + "-", gr, color + "--") for output, col in zip(outputs_l1, colors): plt.plot(output[:,0], output[:,11]*1E3, col+'--') plt.ticklabel_format(axis='both', style='plain', scilimits=(-1,1)) plt.xlabel('$l1 (m)$') plt.ylabel('G $(J / m^2) * 10^{-3}$') plt.xlim(xmin=.2) plt.ylim(ymax=2, ymin=0) plt.subplots_adjust(top=0.8, bottom=0.15, right=0.7)

运行整个程序后,我收到错误信息:

    Traceback (most recent call last): File "C:/Users/Chris/Desktop/Work/Python Stuff/New Stuff from Brenday 8 26 2014/CD_ssa_plot(2).py", line 115, in <module> xs = data[:, col["l1" ]] IndexError: too many indices for array

在我遇到这个问题之前,我遇到了另一个问题,在上面错误信息所指的那一行下面几行:

    Traceback (most recent call last): File "FILE", line 119, in <module> gl = data[:, col["G_left" ]] * 1000.0 # column 12 IndexError: index 12 is out of bounds for axis 1 with size 12

我理解第一个错误,但我只是有问题修复它。第二个错误让我很困惑。我的老板一直盯着我,所以我非常感谢你的帮助。

回答

​Python实用宝典 (pythondict.com)
不只是一个宝典
欢迎关注公众号:Python实用宝典

本文由 Python实用宝典 作者:Python实用宝典 发表,其版权均为 Python实用宝典 所有,文章内容系作者个人观点,不代表 Python实用宝典 对观点赞同或支持。如需转载,请注明文章来源。
0

发表评论