Почему genfromtxt Сципи читает значения NaN как -1? - PullRequest
0 голосов
/ 24 октября 2018
import scipy as sp
data = sp.genfromtxt(r"C:\Users\DELL INSPIRON N3542\Downloads/1400OS_Code/1400OS_01_Codes/data/web_traffic.tsv" , "\t") 
print(data[:24])

[[   1 2272]
 [   2   -1]
 [   3 1386]
 [   4 1365]
 [   5 1488]
 [   6 1337]
 ...
  and the original Data set looks like that

  1  2272
  2  nan
  3  1386
  4  1365
  5  1488
  6  1337
  ...

и вместо этого -1 я должен получить NaN, в исходном наборе данных есть NaN.

1 Ответ

0 голосов
/ 24 октября 2018

Вы передаете "\t" как тип данных, а не разделитель.

Попробуйте вместо этого:

import scipy as sp
data = sp.genfromtxt(r"C:\Users\DELL INSPIRON N3542\Downloads/1400OS_Code/1400OS_01_Codes/data/web_traffic.tsv", delimiter="\t")

Я думаю, вы получите -1 вместо nan, потому чтопо своей природе целые числа не поддерживают nan, а только числа с плавающей запятой.

Я не уверен, почему передача "\t" в качестве типа данных понимается как int64 и не вызывает ошибку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...