如何对dataframe中符合要求的两列数据进行运算?
要求:对已生成的一组dataframe数据列,需要根据日期做条件判断,对不同日期范围的数据,以不同的规则进行数据类运算,运算结果添加至一个新的列。
...
a=pd.DataFrame(data1,columns=['end_date','province','price']) #数组a
b=pd.DataFrame(data2,columns=['province','index_2013','index_2014','index_2015','index_2016'])#数据b
c=pd.merge(a,b,on='province') #以province进行连接
if a['end_date']<= datetime.strptime('2013-12-31','%Y-%m-%d').date(): #判断日期小于13年
c['axp']=c['price']*c['index_2013'] #数据c添加列,数据值=price*index_2013
print c
对if语句行报错,报错如下:
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
在报错行,条件后添加.any()或者.all()则报错消失,但得到的数据不是想要的结果
如:if a['end_date'].any()<= datetime。。。 则不报错
相关阅读:
docker容器创建之后,如何添加volumn呢?
jquery插入图片
FMDB占位符 ? 提示语法不对
linux设置PM2开机启动后,程序是起来了,但是 pm2 list却看不到有程序在跑.
微信获得用户资料
利用滚动监听回到顶部的时候,吸附在顶端的导航栏会抖一下,请问是什么原因?
从后台获取到的emoji表情怎么显示
Activity重建时如何重新获取文件下载进度
webrtc能够单方面传输视屏么?
携程人数选择js代码
dump打印$_SESSION有值,但是利用$_SESSION的值查不到信息?
打算买台1G内存的云主机做mysql服务器,问题是如何配置mysql服务器?
如图,请教大神用bootstrap怎么实现这个布局
ie8上,报堆栈溢出错误,页面还出现卡死的情况
用户登录后签到功能应该怎么做呢?
TestFlight 无法发送推播
为什么我用npm list --depth=0 -global查询出来的node版本为@0.0.0
webpack启动本地服务器,css预编译错误
webpack配置中url?entry=true的作用
回到顶部问题