python – 在numpy数组中替换空格

我的numpy数组中的第三列是Age.在本专栏中,约75%的条目有效,25%为空白.第2列是性别,使用一些操作,我计算了数据集中男性的平均年龄为30.我的数据集中女性的平均年龄为28岁.

我想将男性的所有空白年龄值替换为30,将女性的所有空白年龄值替换为28.

但是我似乎无法做到这一点.任何人都有建议或知道我做错了什么?

这是我的代码:

# my entire data set is stored in a numpy array defined as x

ismale = x[::,1]=='male'
maleAgeBlank = x[ismale][::,2]==''
x[ismale][maleAgeBlank][::,2] = 30 

无论出于何种原因,当我完成上面的代码时,我输入x来显示数据集并且空白仍然存在,即使我将它们设置为30.注意我不能做x [maleAgeBlank],因为该列表将包括一些女性数据点,因为尚未排除女性数据点.

有什么方法可以得到我想要的东西吗?出于某种原因,如果我做x [ismale] [::,1] = 1(将’male’设置为等于1的列),则可行,但x [ismale] [maleAgeBlank] [::,2] = 30不起作用.

数组样本:

#output from typing x
array([['3','1','22',...,'0','7.25','2'],['1','38','71.2833','0'],['3','26','7.925','','2','23.45','30','32','7.75','1']],dtype='

请注意,在上面的输出中,我已将第2列更改为女性,将1更改为男性

最佳答案
这个怎么样:

my_data =  np.array([['3',dtype='

结果:

>>> my_data
array([[u'3',u'1',u'22',u'0',u'7.25',u'2'],[u'1',u'38',u'71.2833',u'0'],[u'3',u'26',u'7.925',u'30',u'2',u'23.45',u'32',u'7.75',u'1']],dtype='

相关文章

Python中的函数(二) 在上一篇文章中提到了Python中函数的定...
Python中的字符串 可能大多数人在学习C语言的时候,最先接触...
Python 面向对象编程(一) 虽然Python是解释性语言,但是它...
Python面向对象编程(二) 在前面一篇文章中谈到了类的基本定...
Python中的函数(一) 接触过C语言的朋友对函数这个词肯定非...
在windows下如何快速搭建web.py开发框架 用Python进行web开发...