找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 7737|回复: 5

[已解决] python如何按行或者列相除

6

主题

14

帖子

14

积分

贫民

积分
14
pythontab_lin 发表于 2017-9-28 17:58:14 | 显示全部楼层 |阅读模式
本帖最后由 pythontab_lin 于 2017-9-30 14:40 编辑

假设:

a = numpy.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]])

b = numpy.array([[1,2,3],[4,5,6]])

python或者numpy里边有没有将a中的元素按元素除以b的函数或者表达式
想得到的结果是
c = [[[1,1,1],[1,1,1]],[[7,4,3],[2.5,2.2,2]]]
回复

使用道具 举报

0

主题

30

帖子

30

积分

贫民

积分
30
胡扶林 发表于 2017-9-28 18:03:30 | 显示全部楼层
DataFrame有列除列的功能
回复 支持 反对

使用道具 举报

6

主题

14

帖子

14

积分

贫民

积分
14
pythontab_lin  楼主| 发表于 2017-9-28 18:19:04 | 显示全部楼层
胡扶林 发表于 2017-9-28 18:03
DataFrame有列除列的功能

是python自带的吗?我找不到这个函数
回复 支持 反对

使用道具 举报

0

主题

30

帖子

30

积分

贫民

积分
30
胡扶林 发表于 2017-9-28 18:33:47 | 显示全部楼层
pandas模块
回复 支持 反对

使用道具 举报

0

主题

30

帖子

30

积分

贫民

积分
30
胡扶林 发表于 2017-9-28 18:35:08 | 显示全部楼层
使用pandas模块的下的DataFrame类 你可以在网上找一下 相关教程 学习一下
回复 支持 反对

使用道具 举报

6

主题

14

帖子

14

积分

贫民

积分
14
pythontab_lin  楼主| 发表于 2017-9-30 14:39:34 | 显示全部楼层
摸索了一段时间,numpy的除运算“/”本身就是支持按行相除的,所以上述问题c=a/b就可以实现,前提是维度要对的上
如:(2,2,3)的维度按三个轴向来除的话,除的维度分别应该为(1,2,3)、(2,1,3),(2,2,1)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表