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

在另一个序列中查找一个序列的所有索引的pythonic方法?

在另一个序列中查找一个序列的所有索引的pythonic方法?

MMMHUHU 2021-09-02 16:09:29
给定两个列表f=['a','b','c','d']and g=['a','c'],我可以[0,2]=indexes(f,g)用def indexes(f,g):     return [f.index(x) for x in g]有没有更好的办法?动机:对于numpy矩阵X,我想提取一些列,所以我想pd.DataFrame(X,columns=f)[g].values用X[:,indexes(f,g)].
查看完整描述

1 回答

?
动漫人物

TA贡献1815条经验 获得超10个赞

您可以使用np.whereafter np.1d来获取交叉索引:

np.where(np.in1d(f,g))
(array([0, 2], dtype=int64),)


查看完整回答
反对 回复 2021-09-02
  • 1 回答
  • 0 关注
  • 174 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

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

帮助反馈 APP下载

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

公众号

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