Ich habe einen Datensatz mit Float-Werten:Dumb Fehler in meiner if/und Aussage - sieht es nicht
dog-auto dog-bird dog-cat dog-dog Result
41.9579761457 41.7538647304 36.4196077068 33.4773590373 0
46.0021331807 41.33958925 38.8353268874 32.8458495684 0
42.9462290692 38.6157590853 36.9763410854 35.0397073189 0
41.6866060048 37.0892269954 34.575072914 33.9010327697 0
39.2269664935 38.272288694 34.778824791 37.4849250909 0
40.5845117698 39.1462089236 35.1171578292 34.945165344 0
45.1067352961 40.523040106 40.6095830913 39.0957278345 0
41.3221140974 38.1947918393 39.9036867306 37.7696131032 0
41.8244654995 40.1567131661 38.0674700168 35.1089144603 0
45.4976929401 45.5597962603 42.7258732951 43.2422832585 0
Dies ist ein SFrame. Ich habe versucht, eine Funktion zu schreiben, die eine if/an-Anweisung verwendet, um zu bestimmen, ob der Wert für Hund-Hund kleiner ist als die Werte für Hund-Katze UND Hund-Auto UND Hund-Vogel.
Ich habe das für den besseren Teil von 4 Stunden durchgemacht. Zugegeben, ich bin ein Neuling für Python - ich mache einen Fehler und sehe es einfach nicht.
If-Anweisung:
def is_dog_correct(row):
if (dog_distances[dog_distances['dog-dog']] < dog_distances[dog_distances['dog-cat']]) & (dog_distances[dog_distances['dog-dog']] < dog_distances[dog_distances['dog-bird']]) & (dog_distances[dog_distances['dog-dog']] < dog_distances[dog_distances['dog-auto']]):
dog_distances['Result'] = 1
else:
dog_distances['Result'] = 0
dann rufe ich die Funktion mit:
dog_distances.apply(is_dog_correct)
Wenn dies richtig funktioniert, würde ich "0" in jeder Zeile, aber der fünften Datensatz sehen. Was ist falsch an meiner if-Anweisung?
Volle Enthüllung - das ist Kursarbeit, aber nachdem ich 4 Stunden damit verbracht habe, erreiche ich Hilfe!
'&' ist eine bitweise Operation. Ändere alle deine '' '' '' '' ' – engineer14
Was ist' dog-distances', dass es sowohl String- als auch (scheinbar) Gleitkomma-Schlüssel hat? Und warum benutzt du '&' anstelle von 'und'? – chepner
Ihre Funktion nimmt ein 'row' Argument, aber verwendet es nie ... –