2016-08-09 7 views
-3

24ヶ月の気温を含む大きなリストに毎月の気温のリストを追加しようとしています。問題は浮動小数点数で与えられるが、項目を追加するには整数でなければならないということです。浮動小数点数をPythonのforループでリストに追加する

temperatures = [] 
np.array(temperatures, dtype = np.float32) 

(私の最初の月後、私は来月のために大きなリスト温度と空TEMP1に私の値を追加)

for item in TEMP1:  
     np.insert(temperatures, TEMP1[item]) 

エラーのメッセージがある:

File "/home/piscopo/Bureau/EC/Alert_extraction.py", line 87, in <module> 
np.insert(temperatures, TEMP1[item]) 

TypeError: list indices must be integers, not numpy.float32 

ありがとうございました

+3

いいえ、誤解されています。何らかの理由で挿入しようとしている値で* TEMP1を索引付けしています。 –

+0

また、私は同じ問題を抱えていますが、浮動小数点の代わりにdatetime64があります。私はこの答えで、私は私の問題の両方を解決できることを願っています。 – saraann87

+0

なぜ 'np.array()'を使用していますが、戻り値は無視していますか? 'np.insert()'のドキュメントを読んだら、ここで引数が混ざっています。 –

答えて

2

変数にnparrayを保存してから、TEMP1の月の温度を追加する必要があります次のようにappend()メソッドを使用してすべてを一度に処理します。

import numpy as np 

TEMP1 = [22.4, 14.4, 12.3] 
temperatures = [] 
floatTemperatures = np.array(temperatures, dtype = np.float32) 

floatTemperatures = np.append(floatTemperatures, TEMP1) 
+0

ありがとう、datetime64でも動作します。非常に素晴らしい。 – saraann87

関連する問題