J'ai écrit une méthode qui extrait une trame de données rawDatabase
, une liste de validations 'validationLists
' et un nom de champ ou de colonne pour appliquer les validations dans la base de données.Interrogation d'une colonne dans un bloc de données en utilisant une variable
Le code ressemble à:
rawDatabase = GetStandardisedField(rawDatabase,validationLists,"Status")
def GetStandardisedField(rawDatabase,validationLists,field):
print('Standardising ', field,' ...')
my_list = validationLists[field]
l1=[]
print(rawDatabase.head())
for x in rawDatabase.field:
print('here')
choice = process.extractOne(x, my_list)[0]
l1.append(choice)
rawDatabase['choice']=l1
rawDatabase[field] = rawDatabase['choice']
del rawDatabase['choice']
return rawDatabase
Dans une version précédente du code j'ai utilisé le nom du champ réel, par exemple:
for x in rawDatabase.Status:
Ceci fonctionnait bien, mais pour faire mon code réutilisable et plus simple que je récrire comme:
for x in rawDatabase.field:
Le code cesse de fonctionner 'ici et je me demande si Python faire es ne vous permettent pas d'utiliser une variable pour sélectionner une colonne dans une trame de données
Toute aide serait grandement appréciée.
Merci