温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python中怎么使用numpy求行均值

发布时间:2022-01-29 08:01:57 来源:亿速云 阅读:612 作者:zzz 栏目:开发技术

本篇内容主要讲解“Python中怎么使用numpy求行均值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中怎么使用numpy求行均值”吧!

题目:

随机给定一个二维数组,结果返回行均值。

输入要求:

第一行:两个用空格隔开的整数,第一个表示矩阵X(n)的行,第二个表示X(p)的列。

接下来的 n 行:X 中行的值。

输出要求:

一个 numpy 一维值数组,四舍五入到第二个小数。

输入样本:

2 2 
1.5 1 
2 2.9

输出样本:

[1.25 2.45]

解题思路:

最简单也是最关键,最重要的一步,导入numpy库。

import numpy as np

需要定义 numpy 数组的行列,因为要满足题目要求的随机性,所以这里就不写死,使用 input 输入。而且行列一定是整数类型的,数据类型必须是int 类型。但是输入的值是字符串,这时候就需要对输入的值进行转换。

n, p = [int(x) for x in input().split()]

接下来,每行都会输入 p 个值。我用了一个范围为 n 的循环,每行都能输入 p 个值。此前还需要定义一个空数组,便于后面的数组进行累加。

arr = []for i in range(n):
    arr += [float(x) for x in input().split()]

接下来就是将数组转换为 numpy 数组,并且给它重塑为二维数组。

arr = np.array(arr).reshape(n, p)

最后就可以直接使用 numpy 的 mean 方法求均值即可,但题目要求是求行均值,这时候就需要设置axis=1,按列计算,获得行均值。同时结果还需要保留小数点后两位,就需要用上 round 方法。

arr.mean(axis=1).round(2)

完整代码:

import numpy as np

n, p = [int(x) for x in input().split()]

arr = []for i in range(n):
    arr += [float(x) for x in input().split()]

arr = np.array(arr).reshape(n, p)
print(arr.mean(axis=1).round(2))

到此,相信大家对“Python中怎么使用numpy求行均值”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI