J'ai un fichier de données qui se présente comme suit:
Date item purchased
01-12-2018 Car
02-12-2018 Truck
03-12-2018 Car
04-12-2018 Bike
En tant que partie du processus de nettoyage des données, j'ai besoin de vérifier que les données sont dans l'ordre chronologique. J'ai donc besoin de vérifier que la date dans une rangée après la date de la rangée précédente. Si non, j'ai besoin de supprimer cette ligne. J'ai reçu instruction de ne pas utiliser les pandas de la bibliothèque.
Jusqu'à présent, j'ai fait les étapes suivantes jusqu'à présent:
#If the file name is - 'Input_file'
from openpyxl import load_workbook
from datetime import datetime
#Reading the file
wb = load_workbook(Input_file)
sheet = wb.active
#Reading the Date column in the file
Date_column = sheet['A']
#Reading each row and the date in each row to compare it with the previous row date
for x in range(len(Date_column)):
Datenow = Date_column[x].value
Datebef= Date_column[x-1].value
Check = Datenow > Datebef
print(Check)
L'erreur, c'est arriver quand j'ai essayer de comparer les objets datetime est :
TypeError: unsupported operand type(s) for -: 'str' and 'datetime.datetime'
Le problème est quand j'ai vérifier le type de la colonne de date, il sort pour être de type datetime.datetime, mais dès que j'essaie de comparer les deux datetime.datetime objets, il me dit que l'on est en string et un est de type datetime.objet datetime. La confusion est si les deux valeurs sont lues à partir de la même colonne, la Façon dont on est le coming-out en tant que chaîne et l'un est de type datetime.datetime.
Comment m'assurer que les valeurs de séjour en datetime.datetime et je peux comparer.
Merci