为了账号安全,请及时绑定邮箱和手机立即绑定

Pandas:从其他数据框中的某些列创建新数据框

Pandas:从其他数据框中的某些列创建新数据框

万千封印 2021-06-12 14:09:29
我有一个 Pandas 数据框old,如下所示:  col1 col2 col30   1   2   31   2   3   42   3   4   5我想创建一个新的数据框,从它的其他列new复制并填充为虚拟值:col2old-1  col2 new_col1 new_col30   2   -1       -11   3   -1       -12   4   -1       -1我想我可以逐行迭代并填充-1不在其中的任何列,old但认为必须有更好的,可能是矢量化的方式。想法?
查看完整描述

3 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

你可以做到reindex。


df.reindex(columns=['col2','newcol1','newcol3'],fill_value=-1)

Out[183]: 

   col2  newcol1  newcol3

0     2       -1       -1

1     3       -1       -1

2     4       -1       -1


查看完整回答
反对 回复 2021-06-15
?
手掌心

TA贡献1942条经验 获得超3个赞

IUC:


new = old.copy()

new[['col1','col3']] = -1


>>> new

   col1  col2  col3

0    -1     2    -1

1    -1     3    -1

2    -1     4    -1

或者更一般地,将所有列更改col2为-1:


new = old.copy()

new[list(set(new.columns) - {'col2'})] = -1


查看完整回答
反对 回复 2021-06-15
  • 3 回答
  • 0 关注
  • 230 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号