【2021115】【Python】Python求列表的均值、中位数、众数
1. 求均值2. 求中位数3. 求众数
·
1. 求均值
先将 list 类型转为 array,再用 np.mean(a_array) 或者 a_array.mean() ~
import numpy as np
a_lis = list(range(10))
a_array = np.array(a_lis)
print(np.mean(a_array))
print(a_array.mean())
不能使用 a_lis.mean()!因为 list 类型没有 mean() 方法。
import numpy as np
a_lis = list(range(10)) # list 类型
print(a_lis)
print(a_lis.mean())
2. 求中位数
先将 list 类型转为 array,再用 np.median(a_array) ~。
不能使用 a_array.median()!因为 array 类型没有 median() 方法!
import numpy as np
a_lis = list(range(10))
a_array = np.array(a_lis)
print(np.median(a_array))
3. 求众数
numpy 中没有直接求众数的方法,但可以使用 np.argmax(np.bincount()) 或者 scipy.stats.mode(a_list) 来求。
(1)np.argmax(np.bincount())方法
import numpy as np
a_lis = [2, 2, 2, 2, 1, 1]
counts = np.bincount(a_lis)
print(np.argmax(counts))
(2)scipy.stats.mode() 方法
from scipy import stats
a_lis = [2, 2, 2, 2, 1, 1]
tmp1 = stats.mode(a_lis)
tmp2 = tmp1[0][0]
print(tmp1)
print(tmp2)
(参考:python求均值、中位数、众数的方法)
更多推荐
已为社区贡献11条内容
所有评论(0)