Python3.8を利用してプログラムを作成しています。
日付の計算のため、pandasライブラリを使用しているのですが、
ライブラリ使用時、コマンドラインにこのようなログ(warining)が表示され
処理の視認性が悪いです
python
1C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:172: RuntimeWarning: divide by zero encountered in exp2 2 eps=exp2(ld(-112)), 3C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:51: RuntimeWarning: divide by zero encountered in log10 4 self.precision = int(-log10(self.eps)) 5C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:52: RuntimeWarning: divide by zero encountered in power 6 self.resolution = float_to_float(float_conv(10) ** (-self.precision)) 7C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:184: RuntimeWarning: divide by zero encountered in exp2 8 epsneg_f80 = exp2(ld(-64))・・・・
ネットの情報をみる限りだと、
import warnings warnings.simplefilter('RuntimeWarning')
をいれる事で解消されると書いてあったのですが
いれてみても、コマンドライン上のログ(warning)は消えてくれません。
ログを消す方法はありますでしょうか。よろしくご指導お願いいたします。
Pythonとnumpyの不整合が起きているように見えます。
Pythonとnumpyをどのようにインストールしましたか。
pythonは、pythonのサイトから、3.8.10 をインストーラでインストール
numpy は pip install numpy でいれたと思います。
なにか、解決方法はありますでしょうか。
モジュールのバージョンは、以下の通りでした。
numpy 1.21.3
pandas 1.3.3
使用しているPCは、surfacePROX です。
import sys
print(sys.version)
import numpy
print(numpy)
で何が表示されますか。
コメントありがとうございます。
```python
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:172: RuntimeWarning: divide by zero encountered in exp2
eps=exp2(ld(-112)),
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:51: RuntimeWarning: divide by zero encountered in log10
self.precision = int(-log10(self.eps))
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:52: RuntimeWarning: divide by zero encountered in power
self.resolution = float_to_float(float_conv(10) ** (-self.precision))
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:184: RuntimeWarning: divide by zero encountered in exp2
epsneg_f80 = exp2(ld(-64))
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:185: RuntimeWarning: divide by zero encountered in exp2
tiny_f80 = exp2(ld(-16382))
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:199: RuntimeWarning: divide by zero encountered in exp2
eps=exp2(ld(-63)),
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:211: RuntimeWarning: divide by zero encountered in nextafter
huge_dd = (umath.nextafter(ld(inf), ld(0))
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:224: RuntimeWarning: divide by zero encountered in exp2
eps=exp2(ld(-105)),
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:225: RuntimeWarning: divide by zero encountered in exp2
epsneg= exp2(ld(-106)),
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:227: RuntimeWarning: divide by zero encountered in exp2
tiny=exp2(ld(-1022)))
C:\pg\Python38\lib\site-packages\numpy\__init__.py:350: RuntimeWarning: divide by zero encountered in subtract
if not abs(x.dot(x) - 2.0) < 1e-5:
C:\pg\Python38\lib\site-packages\numpy\__init__.py:350: RuntimeWarning: divide by zero encountered in absolute
if not abs(x.dot(x) - 2.0) < 1e-5:
3.8.10 (tags/v3.8.10:3d8993a, May 3 2021, 11:34:34) [MSC v.1928 32 bit (Intel)]
<module 'numpy' from 'C:\\pg\\Python38\\lib\\site-packages\\numpy\\__init__.py'>
```
が出力されます。
よろしくお願いします。
失礼しました。追記しますと、
import sys
print(sys.version)
で
PS C:\temp\> python num.py
3.8.10 (tags/v3.8.10:3d8993a, May 3 2021, 11:34:34) [MSC v.1928 32 bit (Intel)]
が出力されます。
import numpy
print(numpy) で
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:172: RuntimeWarning: divide by zero encountered in exp2
eps=exp2(ld(-112)),
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:51: RuntimeWarning: divide by zero encountered in log10
self.precision = int(-log10(self.eps))
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:52: RuntimeWarning: divide by zero encountered in power
self.resolution = float_to_float(float_conv(10) ** (-self.precision))
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:184: RuntimeWarning: divide by zero encountered in exp2
epsneg_f80 = exp2(ld(-64))
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:185: RuntimeWarning: divide by zero encountered in exp2
tiny_f80 = exp2(ld(-16382))
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:199: RuntimeWarning: divide by zero encountered in exp2
eps=exp2(ld(-63)),
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:211: RuntimeWarning: divide by zero encountered in nextafter
huge_dd = (umath.nextafter(ld(inf), ld(0))
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:224: RuntimeWarning: divide by zero encountered in exp2
eps=exp2(ld(-105)),
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:225: RuntimeWarning: divide by zero encountered in exp2
epsneg= exp2(ld(-106)),
C:\pg\Python38\lib\site-packages\numpy\core\getlimits.py:227: RuntimeWarning: divide by zero encountered in exp2
tiny=exp2(ld(-1022)))
C:\pg\Python38\lib\site-packages\numpy\__init__.py:350: RuntimeWarning: divide by zero encountered in subtract
if not abs(x.dot(x) - 2.0) < 1e-5:
C:\pg\Python38\lib\site-packages\numpy\__init__.py:350: RuntimeWarning: divide by zero encountered in absolute
if not abs(x.dot(x) - 2.0) < 1e-5:
3.8.10 (tags/v3.8.10:3d8993a, May 3 2021, 11:34:34) [MSC v.1928 32 bit (Intel)]
<module 'numpy' from 'C:\\pg\\Python38\\lib\\site-packages\\numpy\\__init__.py'>
が出力されます。numpyとARM64コアの相性が悪いのでしょうか。
armのsurface pro xのエミュレータ上で、32bit x86のpythonを動かしているということでしょうか?
エミュレータを使っている意識はありませんが、ARMの問題なのか64bit版がうまく入りませんでしたので、32bit版をいれて動かしております。
surfacePROX ARMであるのは、その通りです。64bitをいれないと難しいでしょうか
解決されたようなのでご参考まで
https://github.com/numpy/numpy/issues/17747
回答1件
あなたの回答
tips
プレビュー