Ausgabe
conditions = [
(final_dataframe['In stock?'] == 1 & [final_dataframe['qty_total'] < 1]),
(final_dataframe['In stock?'] == 0 & [final_dataframe['qty_total'] >= 1])
]
t_or_f = ['True', 'False']
final_dataframe['Unlist This']
Ich habe diesen Code, der besagt, wenn die Spalte “Auf Lager” = 0 und die Spalte “Menge” kleiner als 1 ist, schreiben Sie wahr in die neue Spalte (nicht auflisten). Und wenn die Spalte “Auf Lager” = 1 und die Spalte “Menge” >= 1 ist, schreiben Sie falsch. Ich möchte dies nur aktualisieren, damit der zweite im Grunde sagt:
Wenn “auf Lager?” = 0 und qty_total ist ZWISCHEN 1 und 98765, dann drucke False. Irgendwie kann ich diesen vorhandenen Code einfach aktualisieren, um dies oder etwas Ähnliches zu tun, damit Zahlen über 98765 etwas in die neue Spalte drucken?
Lösung
Zuerst müssen Sie die Klammern richtig in Ihre Bedingungen setzen. Pandas mag & nicht ohne richtige Klammern.
Als nächstes könnten Sie verwenden Series.between
, um Ihre zweite Bedingung zu ändern.
Damit conditions
sieht Ihr Wille so aus:
conditions = [
(final_dataframe['In stock?'] == 1) & (final_dataframe['qty_total'] < 1]),
(final_dataframe['In stock?'] == 0) & (final_dataframe['qty_total'].between(1, 98765, inclusive='both'))
]
Beantwortet von – SomeDude
Antwort geprüft von – Pedro (FixError Volunteer)