对我来说工作:
df.ix[df['Type']=='Dog ',' killed ' ]=df.IX [ df [ ' type ' ]==' dog ',' killed'].fillna(2.25 )
是打印(df )
类型关键服务
0 Dog 5.00 2
1 Dog 3.00 4
2 Cat 1.00 7
3 Dog 2.25 3
4 cow NaN 2
如果系列需要fillna -由于两列被杀并幸存:
是打印(m )
Killed 4.0
有保障的3.0
dtype :浮点64
df.IX [ df [ ' type ' ]==' dog ' ]=df.IX [ df [ ' type ' ]==' dog ' ].fill na [ m ]
是打印(df )
类型关键服务
0 Dog 5.0 2
1 Dog 3.0 4
2 Cat 1.0 7
3 Dog 4.0 3
4 cow NaN 2
如果基尔纳必须只有基尔德列:
#if dont need rounding,omit it
是打印(m )
4
df.ix[df['Type']=='Dog ',' killed ' ]=df.IX [ df [ ' type ' ]==' dog ',' Killed'].fillna(m
是打印(df )
类型关键服务
0 Dog 5.0 2
1 Dog 3.0 8
2 Cat 1.0 7
3 Dog 4.0 3
4 cow NaN 2
可以重用以下代码:
filtered=df.IX [ df [ ' type ' ]==' dog ',' Killed']
是打印(过滤器)
0.0
1.0
3 NaN
Name: Killed,dtype: float64
df.ix[df['Type']=='Dog ',' killed ' ]=filtered.fill na (filtered.mean ()
是打印(df )
类型关键服务
0 Dog 5.0 2
1 Dog 3.0 8
2 Cat 1.0 7
3 Dog 4.0 3
4 cow NaN 2