目の付け所が斜め上下 (http://menotsu.blogspot.jp/ のBackup版)

「Google検索でなかなか見つからない情報を、独自視点で備忘録も兼ねて掲載」の予備サイトです。

昼休みや通勤・通学時間帯でも速度低下しにくい格安回線(MVNO)特集
 (遅い格安SIMに削られる時間を仕事にあてたら、いくら得するだろう・・・・)

■期間限定ポイントの消化にいかが? ・ギフト券店(楽天)

空きスペースを駐車場などでレンタルして小遣い稼ぎ

■お得な招待コード or 招待ページ
メルカリ:FEKMZK、ポイントサイト モッピーアメフリげん玉げっとま

免責:本記事により生じた損失について記述者は一切の責任を持てませんので、その程度の内容としてご活用下さい。出所が怪しいネット情報は新規の着眼点を得るために使うべきで、興味を持った場合は信頼できる情報源で検証して下さい。さらに、その検証結果を公開してもらえると有り難いです。なお不具合の注意喚起は公衆の不利益回避のためであって、他者を攻撃するためではありません。
本記事にはCM等の事業者の表示が含まれます。

Numbaで「TypingError: No conversion from list(float64) to float64 for」と出た時の暫定的対処法 @python @トラブル対処

■■■トラブル内容 ■■■

以下のコードでpython の numba を使用したところ、その下のようなエラーが出ました。

■■実行コード
from numba import jit,njit, f8, i8
@njit('f8(f8[:],f8[:],i8)')
def weighted_moving_average(input_list, weight, where_to_write):
  rrr=[0.0]*len(input_list)
  for nnn in range(0, len(input_list)-len(weight)):
    ttt=0 #temporary
    for mmm in range(0, len(weight)):
      ttt += (weight[mmm] * input_list[nnn+mmm])
    rrr[nnn + int(where_to_write)] = ttt/len(weight)
  return rrr


■■エラーコード
TypingError: No conversion from list(float64) to float64 for '$126return_value.1', defined at None

File "<ipython-input-9-938219424ced>", line 9:
def weighted_moving_average(input_list, weight, where_to_write):
    <source elided>
    rrr[nnn + int(where_to_write)] = ttt/len(weight)
  return rrr
  ^

[1] During: typing of assignment at <ipython-input-9-938219424ced> (9)



下に続く・・・
スポンサードリンク


■■■対策 ■■■

numba上の返り値の型指定を消す。つまり
@njit('f8(f8[:],f8[:],i8)') を
@njit('(f8[:],f8[:],i8)') に変更しました。

エラーコードが実際とかみ合っていない or 私の理解力が不十分、によりエラーコードから原因はわかりませんでしたが、どうやら float64の部分とreturnの部分がお気に召さないようなので消しました。

 "No conversion from list" numba
でググってみても問題解決に至らなかったので、上記原始的方法で片づけました。
良い方法をご存知でしたらコメントをお願いします。


(コメントされる場合はコメントの最初にjjjjと入れて下さい。無い場合はスパムとみなされてしまいます。 English comments will be welcomed. If you have any comments, please write 'jjjj' at first of your comments OR spam filters will delete your comments.)

スポンサードリンク

免責:本ブログの内容により、いかなる損失が発生しても本ブログの記述者は一切の責任を持ちませんので、その程度の内容としてご活用下さい。