TypeError: zip-argument #2 muss der support iteration

Ich bekam eine Fehlermeldung TypeError: zip-argument #2 muss der 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)

Ich denke, das Teil zip(y, array_x, array_y) ist falsch, da die zip ' s Argumente sind nicht von der Liste geben,so schrieb ich

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

aber ich bekam eine Fehlermeldung,

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

So, ich kann nicht verstehen, wie man dieses Problem beheben.
Was soll ich tun?

Sagen Sie uns, die Natur des y, array_x und array_y. Wenn arrays erzählen uns die Form. Und was ist der Zweck der zip? Warum ist li_result doppelt vergeben?
y ist ein string-Typ, und es ist der item name. array_x ist Typ int,es ist der Preis. array_y ist Typ int,es ist Lager zählen.Ich will eine Liste machen von diesen Daten,außerdem konnte ich die Liste alle Artikel-Daten.Also meine ideal-Liste wie [('itemA', 1000, 100), ('itemB', 2000, 2000), ('itemC', 300, 5000)].
Ich lese zip-Funktion ist nur für die Serie(wie Liste). y, array_x und array_y sind Zeichenfolge&int,so ist es falsch?
so y ist eine Liste von strings?
Nein.y ist Element name.y ist in itemNameList wie [itemA itemB,itemC] y ist, diese Elemente der Liste.

InformationsquelleAutor user21063 | 2017-03-22

Schreibe einen Kommentar