2014-05-08 3 views
3

Я загружаю данные из csv, используя loadtxt, где все значения являются поплавками, за исключением отсутствующих данных, которые кодируются как символ «?».Вводные данные маску-маски с отсутствующими значениями

Я пытаюсь создать маскированный массив, чтобы я мог использовать функции np.ma для загруженных данных, где отсутствующие данные будут игнорироваться с целью средних значений и т. Д. Я прочитал документацию для masked_array и это, наверное, невероятно тривиально, но я не могу понять, как замаскировать массив таким образом? игнорируются с целью математических функций np.ma.

ответ

2

Вы можете просто использовать np.genfromtxt(), чтобы прочитать файлы и замаскировать полученные значения nan. Например:

вход:

11, 12, 13, ?, ?, 16 
21, 22, ?, 24, ?, 26 

Код:

a = np.genfromtxt('test.txt', delimiter=',', missing_values='?', usemask=True) 

a.sum(axis=1).data 
#array([ 52., 93.]) 

a.mean() 
#18.125 
Смежные вопросы