Używam numpy funkcja loadtxt do odczytu w dużym zestawie danych. Dane wydają się zaokrąglone. na przykład: liczba w pliku tekstowym wynosi -3.79000000000005E + 01, ale numpy odczytuje liczbę jako -37,9. Ustawiłem dypte na np.float64 w wywołaniu loadtxt. Czy mimo to zachowuje precyzję oryginalnego pliku danych?Numpy loadtxt zaokrąglanie numerów
5
A
Odpowiedz
5
loadtxt
nie zaokrągla liczby. Co widzisz jest droga NumPy wybiera druku tablica:
In [80]: import numpy as np
In [81]: x = np.loadtxt('test.dat', dtype = np.float64)
In [82]: print(x)
-37.9
Rzeczywista wartość jest np.float64 najbliżej wartości odbieranego.
In [83]: x
Out[83]: array(-37.9000000000005)
lub w bardziej prawdopodobny przykład, że masz większą gamę wymiarową,
In [2]: x = np.loadtxt('test.dat', dtype = np.float64)
Jeśli repr
z x
wygląda obcinane:
In [3]: x
Out[3]: array([-37.9, -37.9])
można użyć np.set_printoptions
, aby uzyskać wyższą precyzję:
In [4]: np.get_printoptions()
Out[4]:
{'edgeitems': 3,
'infstr': 'inf',
'linewidth': 75,
'nanstr': 'nan',
'precision': 8,
'suppress': False,
'threshold': 1000}
In [5]: np.set_printoptions(precision = 17)
In [6]: x
Out[6]: array([-37.90000000000050306, -37.90000000000050306])
(Dzięki @mgilson za wskazanie na to.)
Powiązane problemy
- 1. numpy loadtxt Pomiń pierwszy wiersz
- 2. Jakie są dostępne typy danych dla "dtype" z loadtxt NumPy() i genfromtxt?
- 3. Czytanie tylko 1 kolumny z pliku przy użyciu funkcji loadtxt() NumPy
- 4. Półokrągłe zaokrąglanie
- 5. Zaokrąglanie w matematyce podwójne
- 6. Zaokrąglanie do najbliższej setki
- 7. Zaokrąglanie rogów obrazu
- 8. JavaScript VS zaokrąglanie PHP
- 9. Zaokrąglanie DateTime objects
- 10. Zaokrąglanie podwaja - 0,5 - sprintf
- 11. JavaScript inteligentne zaokrąglanie
- 12. Zaokrąglanie wartość dziesiętną
- 13. LINQ obiektów - powrót par numerów z listy numerów
- 14. Zaokrąglanie z DecimalFormat w Javie
- 15. Zaokrąglanie do 2 miejsc dziesiętnych
- 16. zaokrąglanie dziesiętne w zjednoczeniu sum?
- 17. Zaokrąglanie liczb do określonych wielokrotności
- 18. sql zaokrąglanie do wielokrotności 5?
- 19. liczba zaokrąglanie do najbliższego przedziału
- 20. Jak działa zaokrąglanie w Pythonie?
- 21. Python - Zaokrąglanie przez ćwierć odstępach
- 22. Zaokrąglanie Mechanizm do najbliższego 0,05
- 23. Zaokrąglanie CSS subpikseli na transformacje
- 24. MySQL MONTHNAME() z numerów
- 25. Usuwanie numerów ze stringów
- 26. Najprostszy sposób sprawdzania numerów
- 27. Generowanie czasu z numerów
- 28. Porównanie dwóch numerów wersji
- 29. Algorytm wykluczania numerów
- 30. Edycja numerów linii w Eclipse
To może również być pouczające wspomnieć [ 'np.set_printoptions'] (http://docs.scipy.org/doc/numpy/reference /generated/numpy.set_printoptions.html) – mgilson
Doskonały. To rozwiązało zagadkę. Zmiana opcji np.set_print pozwala na drukowanie pełnych numerów. – JMD