Wie kann ich verhindern das meine Liste Überschrieben wird?
Hallo liebes Community,
ich möchte, in eine Liste Werte hinzufügen, um anschließend mir den durchschnitt auszugeben. Allerdings werden meine Werte immer überschrieben.
averageGamma = [ ]
averageC = [ ]
valuess= {'gamma' : 5, 'C' : 6, 'C' : 7, 'gamma':10}
for key, value in valuess.items():
if key == 'gamma':
averageGamma.append(value)
else:
averageC.append(value)
print(np.mean(averageGamma))
print(np.mean(averageC))
Ausgabe: 10
Ausgabe: 7
danke schonmal
List
Ich versuche fuer folgende Parameter: SVC(kernel = 'rbf', C = 1, gamma= 1) den bestmöglichen Durchschnittswert zu ermitteln:
averageGamma = []
averageKey = []
for i in range (0 , 100):
clf = GridSearchCV( SVC(), param_grid={
'gamma' : [1, 2, 3, 4, 5],
'C' : [1, 2, 3, 4, 5]
}, cv = RepeatedKFold())
clf.fit(sc.transform(x_train), y_train)
for key, values in clf.param_grid.items():
if key == 'gamma':
averageGamma.append(values)
else:
averageKey.append(values)
print(np.mean(averageGamma))
print(np.mean(averageKey ))
So sieht der Code ursprünglich aus.
averageGamma = []
averageKey = []
for i in range (0 , 100):
clf = GridSearchCV( SVC(), param_grid={
'gamma' : [1, 2, 3, 4, 5],
'C' : [1, 2, 3, 4, 5]
}, cv = RepeatedKFold())
clf.fit(sc.transform(x_train), y_train)
for key, values in clf.param_grid.items():
if key == 'gamma':
averageGamma.append(values)
else:
averageKey.append(values)
print(np.mean(averageGamma))
print(np.mean(averageKey ))
So sieht der Code ursprünglich aus.
- __blackjack__
- User
- Beiträge: 14077
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@alpi: Was meinst Du mit „überschrieben“? Das einzige was sich in der Schleife ändert ist `i`, und das wird nirgends verwendet. Falls da nicht irgendwo Zufallswerte rein spielen oder die `fit()`-Methode das `param_grid` verändern, kommt da in jedem Schleifendurchlauf das gleiche bei heraus.
Laut Doku ist `param_grid` nicht einmal ein offizielles Attribut. Bist Du sicher, dass Du *darüber* iterieren möchtest, und nicht beispielsweise über das beste Ergebnis?
Laut Doku ist `param_grid` nicht einmal ein offizielles Attribut. Bist Du sicher, dass Du *darüber* iterieren möchtest, und nicht beispielsweise über das beste Ergebnis?
“Vir, intelligence has nothing to do with politics!” — Londo Mollari