我正在尝试使用Python确定数据表中Z的最佳值。当Y值的差值大于10时,Z的最佳值出现。在我的代码中,我将每个条目的元素分配到一个类中。因此,为了确定最佳值,我需要访问先前计算的Y值,并从新值中减去它。这一切对我来说似乎非常麻烦,所以如果你知道一个更好的方法,我可以执行这些类型的计算请让我知道。我的示例数据表是:
X Y Z
1 5 10
2 3 20
3 4 30
4 6 40
5 12 50
6 12 60
7 34 70
8 5 80
到目前为止,我的代码是:
class values:
def __init__(self, X, Y, Z):
self.X = X
self.Y = Y
self.Z = Z
#Diff = Y2 - Y1
#if Diff > 10:
#optimum = Z
#else:
#pass
#optimum
valueLst = []
f = open('sample.txt','r')
for i in f:
X = i.split('\t')[0]
Y = i.split('\t')[1]
Z = i.split('\t')[2]
x = values(X,Y,Z)
valueLst.append(x)
下表显示了我想要实现的操作示例。Y值的差值在第三列中计算,当差值为22时,我想返回Z值,即Z值为70。你知道吗
1 2 10
2 3 1 20
3 4 1 30
4 6 2 40
5 12 6 50
6 12 0 60
7 34 22 70
8 35 1 80
任何帮助都将不胜感激。你知道吗
跳过元组x,y和z的构建
首先,可以将列放入列表数据结构中:
当您有数据结构时,您可以将它们一起使用来获得您想要的其他数据结构。你知道吗
然后你可以从第二个y开始得到每一个差:
你想要的是z和最大差值在同一个索引处,所以:
一个
class
似乎有点过分了。为什么不列出(x, y, z)
元组?你知道吗然后可以确定
y
值之间的差异,并从对应于最大增量y
的3元组中获取最后一项z
:相关问题 更多 >
编程相关推荐