gpt4 book ai didi

Python:平移平均和空间分隔

转载 作者:行者123 更新时间:2023-11-30 23:26:27 26 4
gpt4 key购买 nike

我正在尝试计算一组预测的平均值(我的模型创建的介于 0 和 1 之间的值)。但是,预测值会发生变化,这样,如果有 10 个数据值,则进行预测三件套如下:

0.6825 0.7022 0.7023
0.6193 0.6410 0.6389
0.5934 0.6159 0.6145
0.5966 0.6191 0.6184
0.3331 0.3549 0.3500
0.1862 0.2015 0.1999
0.1165 0.1270 0.1267
0.1625 0.1761 0.1740

其中这些值对应的索引如下:

1   2   3
2 3 4
3 4 5
4 5 6
5 6 7
6 7 8
7 8 9
8 9 10

我正在尝试编写一个脚本,以便我逐行读取输入并输出适合每个索引的预测值的平均值(对两个二的平均值、三个三的平均值、三个四的平均值等)这样每行就有一个:

0.6825
0.7001
etc...

但是,我不确定如何读取数据,以便能够区分第 1 行中的 0.6825 和 0.7022。如何读取信息以便能够将其全部存储在连续的数组中?

就逻辑而言,我认为我可以对第一个、第二个、最后一个和倒数第二个值有特殊情况,并对其余值运行循环。

最佳答案

def linereader(fName):
with open(fName) as f:
for line in f:
yield map(float, line.split())


result = []
data = []
for i, line in enumerate(linereader('values.txt')):
data.append(line)
if i == 0:
result.append(data[0][0])
elif i == 1:
result.append((data[0][1] + data[1][0])/2)
else:
result.append((data[i-2][2] + data[i-1][1] + data[i][0])/3)

result.append((data[-2][2] + data[-2][1])/2)
result.append(data[-1][2])

print result
#[0.6825, 0.66075, 0.6455666666666667, 0.6171333333333333, 0.5222333333333333, 0.3865, 0.22266666666666668, 0.16313333333333332, 0.12685000000000002, 0.174]

关于Python:平移平均和空间分隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22517994/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com