1. ホーム
  2. python

[解決済み】TypeError: 1つの要素を持つ整数の配列のみがインデックスに変換可能です 3

2022-02-16 08:36:21

質問

タイトルにこのようなエラーが発生し、何が悪いのかわかりません。np.appendの代わりにnp.hstackを使うとうまくいくのですが、もっと速くしたいのでappendを使ってください。

time_list 浮動小数点数のリスト

heightsは1次元のnp.arrayの浮動小数点数です。

j = 0
n = 30
time_interval = 1200
axe_x = []

while j < np.size(time_list,0)-time_interval:
    if (not np.isnan(heights[j])) and (not np.isnan(heights[j+time_interval])):
        axe_x.append(time_list[np.arange(j+n,j+(time_interval-n))])

前 {{コード

解決するには?

問題は、エラーの示す通りです。 File "....", line .., in <module> axe_x.append(time_list[np.arange(j+n,j+(time_interval-n))]) TypeError: only integer arrays with one element can be converted to an index

time_list

In [136]: time_list = [1,2,3,4,5,6,7,8,9,10,11,12,13,14] In [137]: time_list[np.arange(5,6)] Out[137]: 6 In [138]: time_list[np.arange(5,7)] --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-138-ea5b650a8877> in <module>() ----> 1 time_list[np.arange(5,7)] TypeError: only integer arrays with one element can be converted to an index

time_list

numpy.array


In [141]: time_list = np.array(time_list) In [142]: time_list[np.arange(5,6)] Out[142]: array([6]) In [143]: time_list[np.arange(5,7)] Out[143]: array([6, 7])

while

j

j