kaggle实例学习-Titanic(3)

先学习一个函数:
np.unique()
返冋其参数数组中所有不同的值,并且按照从小到大的顺序排列。它有两个可选参数:
return_index : Ture表示同时返回原始数组中的下标。
Return_inverse: True表示返冋重建原始数组用的下标数组。
现在考虑多个属性,gender,Pclass,price,所以用一个2× 3× 4的array来存储。
price以40为界,每个属性中的值进行遍历挑选。

fare_ceiling = 40
data[ data[0::,9].astype(np.float) >= fare_ceiling, 9 ] = fare_ceiling - 1.0
fare_bracket_size = 10
number_of_price_brackets = fare_ceiling / fare_bracket_size
number_of_classes = 3
number_of_classes = len(np.unique(data[0::,2])) 
survival_table = np.zeros((2, number_of_classes, number_of_price_brackets))
for i in xrange(number_of_classes):
    for j in xrange(number_of_price_brackets):
           women_only_stats = data[(data[0::,4] == "female")   
                       &(data[0::,2].astype(np.float) 
                             == i+1)               
                       &(data[0:,9].astype(np.float) 
                            >= j*fare_bracket_size)               
                       &(data[0:,9].astype(np.float)  
                            < (j+1)*fare_bracket_size)
                          , 1]
           men_only_stats = data[(data[0::,4] != "female")    
                       &(data[0::,2].astype(np.float) 
                             == i+1)                               
                       &(data[0:,9].astype(np.float)  
                            >= j*fare_bracket_size)               
                       &(data[0:,9].astype(np.float)  
                            < (j+1)*fare_bracket_size)
                          , 1] 
survival_table[0,i,j] = np.mean(women_only_stats.astype(np.float)) 
survival_table[1,i,j] = np.mean(men_only_stats.astype(np.float))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值