警告抑止のためのメモ。
警告メッセージは私の環境で以下の通り。
C:\Users\wanta\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\sklearn\base.py:561: FutureWarning: Arrays of bytes/strings is being converted to decimal numbers if dtype='numeric'. This behavior is deprecated in 0.24 and will be removed in 1.1 (renaming of 0.26). Please convert your data to numeric values explicitly instead. X = check_array(X, **check_params)
そのままでもpythonプログラム自体は動作するが警告メッセージが気持ち悪いので対応する。
多分、数値として扱いたいところが文字列型になっている。
エラーにならないのは恐らく暗黙的に変換してくれているから。
明示的にfloat
に変換する。
numpy
を使用している場合には以下で変換できる。
a = ['1.0', '2.0', '3.0', '4.0'] # floatに変換 b = np.array(a, dtype=float)
数値以外の文字列が入ってくる可能性がある場合には事前にチェックが必要になるか。