python - IndexError: too many indices for array ... 运行此代码时出错
问题描述
我收到以下错误
IndexError:数组的索引过多
运行此代码时:
import numpy as np
import matplotlib.pyplot as plt
y = np.array([[208500, 181500,
223500,
140000, 250000, 143000,
307000, 200000, 129900,
118000]])
X = np.array([[1710, 1262, 1786,
1717, 2198, 1362,
1694, 2090, 1774,
1077],
[2003, 1976, 2001,
1915, 2000, 1993,
2004, 1973, 1931,
1939]])
data=[X, y]
# print data
print(data)
input= np.array(data)
print(input)
# Setup matrices
m = np.shape(input)[0]
X=np.matrix([np.ones(m),input[:,0]]).T
y = np.matrix(input[:,1]).T
有人可以帮我找出问题所在吗?
解决方案
首先,您命名的变量input
是一维数组。您不能使用两个索引来访问一维数组。一个很好的例子是你不能只用一个索引访问一个矩阵,或者你不能访问一个有两个索引的向量。
input
如果执行,您可以检查大小input.shape
如我所见,您在input
变量中有一个包含两个嵌套数组的一维数组。如果要访问第一个数组,则应执行 input[0] 并在该位置的数组中附加索引,例如input[0][0,0]
第一个数组是 2D 形状,如果你执行你可以检查它
input[0].shape
所以,你应该使用 2 个索引来访问它。
如果您需要进一步的帮助,请告诉我。
推荐阅读
- python - 从熊猫数据框中删除一个空行
- assembly - 从 al 中减去一个更大的数
- r - R:如何在某些列匹配的同一数据框中替换列中的 NA?
- javascript - npm 取消链接所有链接的全局模块
- ios - iOS密码自动填充建议新密码而不是现有密码
- linux - 如何安全地使用 mmap() 进行阅读?
- java - 发送收到的spring FilePart而不保存
- microsoft-graph-api - 来自 Microsoft Graph 的详细 Skype for Business 报告
- android - inflater.inflate 中的 NPE
- excel - 在单元格可能包含公式的区域中查找最后一个非空列