首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据行中的条件向数据框添加列

根据行中的条件向数据框添加列
EN

Stack Overflow用户
提问于 2017-12-12 04:19:54
回答 1查看 28关注 0票数 1

我有一个这样的数据帧:

代码语言:javascript
复制
case    sex     is1     is5     is10    im1     im5     im10
686     m       0.1406  0.2997  0.1490  0.1339  0.1350  0.1417
950     f       0.1602  0.3448  0.1719  0.0884  0.0962  0.1385
1005    f       0.1641  0.2606  0.1507  0.1306  0.1613  0.1328
1005    m       0.1456  0.3097  0.1825  0.1116  0.1295  0.1211

我想使用公式添加第9列,比方说

代码语言:javascript
复制
if df['sex'] == 'm':
    df['new col']=const1*df['is1']+const2*df['is5']+.....+const6*df['im10']
else:
    df['new col'] = const7*df['is1']+.....const12*df['im10']

我该怎么做呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-12 04:23:59

试试这个:

代码语言:javascript
复制
df['new col'] = np.where(df.sex=='m', 
                         df.drop(['case','sex'],1).dot(const_m), 
                         df.drop(['case','sex'],1).dot(const_f))

其中const_mmale的系数列表,const_ffemale的系数列表

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47760766

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档