python - 列表中具有固定增量的特定数字的平均值
问题描述
假设我有下面的列表
array=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15]
我想找到增量为 4 个数字的第一个元素的平均值。
例如,第一个平均值将用于数字0, 4, 8, 12 = 6
第二个平均值将用于数字1, 5, 9, 13 = 7
如此一来,最终将有 4 个数字表示平均值。
我写了
Av=[]
mean =0
array=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15]
for i in range(len(array)):
for n in 4:
mean = array[n] +mean
mean = mean/4
Av.append(mean)
但它不会增加循环。
问候
解决方案
您可以使用python 切片运算符而不是 for 循环。
av = []
array=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
for i in range(4):
av.append(sum(array[i::4])/len(array[i::4]))
这是做什么的:
该操作[::4]
需要每 4 个元素。该操作[i::4]
从第 i 个元素开始,每第 4 个元素进行一次。
列表的平均值只是其元素的总和除以其长度。
推荐阅读
- elixir - Ecto - 递归计算嵌套关联
- active-directory - 如何从导入组中排除 AD OU
- java - 限制生成的 SWT 对象的数量后不再有句柄
- java - 尝试将 Arrayadapter 变成 Int Array 的问题
- django - Django 如何在内置的 EditProfileForm 上呈现用户值
- java - 有没有办法可以匹配这个 ArrayList 以便 burger1 到位 1?
- android - 框架仅在 Android 上覆盖 Label TextColor (xamarin-forms)
- java - Visual Studio Code 中的 Java 测试运行程序
- javafx - 在 GridPane 中动态调整按钮的大小和重新定位
- python-3.x - 如何计算形状相交的多边形数量?