Float 자릿수를 조절하기 위해서는 set_printoptions(precision=n) 명령어를 사용하게 된다.
numpy : numpy.set_printoptions(precision=2)로 소수점을 조절할 수 있다.
PyTorch : torch.set_printoptions(precision=2)로 소수점을 조절할 수 있다.
import numpy as np
import torch
pi = 3.141592653589793238462643383279502884197169399375105820974944
PI = np.array([pi])
print("numpy 소수점 고정 전 : ", PI)
np.set_printoptions(precision=10)
print("numpy 소수점 고정 후 : ", PI)
PI = torch.tensor([pi])
print("torch 소수점 고정 전 : ", PI)
torch.set_printoptions(precision=10)
print("torch 소수점 고정 후 : ", PI)
numpy는 변수나 상수는 set_printoptions(precision=n)이 적용되지 않는다. 사용을 한다면 리스트로 변경을 해줘야 한다.
tensor는 모두 사용이 가능하다.
차후 정확한 값 파악을 위해 Scientific Notation(과학적 기수법)을 켜거나 꺼야 할 필요성이 있다.
Scientific Notation은 너무 크거나 너무 작은 숫자들을 십진법으로 편하게 작성하기 위해 표현하는 방법이다.
numpy : numpy.set_printoptions(suppress=True)로 Scientific Notation 사용을 막을 수 있다.
PyTorch : torch.set_printoptions(sci_mode=False)로 Scientific Notation 모드를 끌 수 있다.
import numpy as np
import torch
pi = 0.03141592e-3
PI = np.array([pi])
np.set_printoptions(suppress=True)
print("numpy suppress=True : ", PI)
np.set_printoptions(suppress=False)
print("numpy suppress=False : ", PI)
PI = torch.tensor([pi])
torch.set_printoptions(sci_mode=True)
print("torch sci_mode=True : ", PI)
torch.set_printoptions(sci_mode=False)
print("torch sci_mode=False : ", PI)
numpy와 Pytorch는 True, False가 반대 개념으로 사용된다. (유의하자!!!)