gpt4 book ai didi

python - 类型错误 : zip argument #2 must support iteration

转载 作者:太空狗 更新时间:2023-10-30 01:32:20 25 4
gpt4 key购买 nike

我得到一个错误 TypeError: zip argument #2 must support iteration。

data = libraries.pd.read_csv('a.csv',header=1, parse_dates=True)
datas = DataCleaning.DataCleaning(data)
datas.cleaning(media)

calDf = datas.getDatas()

array_x = libraries.np.int32(libraries.np.zeros(len(calDf)))
array_y = libraries.np.int32(libraries.np.zeros(len(calDf)))


if len(calDf) > 1:
for num in range(len(calDf)):
array_x[num] = calDf.iloc[num,0]
array_y[num] = calDf.iloc[num,1]

def nonlinear_fit(x,a,b):
return b * libraries.np.exp(x / (a+x))

prameter_initial = libraries.np.array([0,0])

try:
param, cov = libraries.curve_fit(nonlinear_fit, array_x, array_y, maxfev=5000)

except RuntimeError:
print("Error - curve_fit failed")

li_result = []
li_result = zip(y, array_x, array_y)

我认为 zip(y, array_x, array_y) 部分是错误的,因为 zip 的参数不是列表类型,所以我写了

for i in y:
li_result = []
li_result = zip(y, array_x[i], array_y[i])

但是我得到了一个错误,

li_result = zip(y, array_x[i], array_y[i])
IndexError: only integers, slices (`:`), ellipsis (`...`),
numpy.newaxis (`None`) and integer or boolean arrays are valid indices

所以,我不明白如何解决这个问题。我该怎么办?

最佳答案

听起来你有三个数组 itemNameListarray_xarray_y

假设它们都是相同的形状,你可以这样做:

zipped = zip(itemNameList,array_x,array_y)
li_result = list(zipped)

编辑

您的问题是 array_xarray_y 不是实际的 numpy.array 对象,但可能是 numpy.int32(或其他一些不可迭代的)对象:

array_x = np.int32(np.zeros(None))
array_x.shape
# ()
array_x.__iter__
# AttributeError: 'numpy.int32' object has no attribute '__iter__'

也许它们的初始化没有按预期进行,或者它们正在从您代码中某处的数组进行更改?

关于python - 类型错误 : zip argument #2 must support iteration,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42943529/

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