热线电话:13121318867

登录
2020-03-20 阅读量: 1073
我想做个循环,求每列最后一个值减去第一个值 循环写不对

我想做个循环,求每列最后一个值减去第一个值 循环写不对

代码是这么写的:

c=[]
for i in data_01_.columns:
new=data_01_.iloc[:10,i].mean()-data_01_.iloc[-10,i].mean()
c.append(new)

我感觉我现在有点晕,不知道怎么才对了

答:这个代码的问题是你的索引错了

冒号丢掉了,[-10:,i]这样才取到后10个

其实还可以使用pandas dataframe对象的apply方法,代码写起来更简单。

data_01_.apply(lambda x:x[:10].mean()-x[-10:].mean())

这样的代码不仅简单,性能上也比for循环高许多。尤其是对行做操作时性能优势更明显,毕竟大部分数据的行比列多许多。

19.9941
0
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子