Le constructeur DataFrame n'est pas correctement appelé! Erreur
Je suis nouveau sur le python et je suis confronté à problème à la création de la Dataframe dans le format de la clé et de la valeur c'est à dire
data = [{'key':'\[GlobalProgramSizeInThousands\]','value':'1000'},]
Voici mon code
columnsss = ['key','value'];
query = "select * from bparst_tags where tag_type = 1 ";
result = database.cursor(db.cursors.DictCursor);
result.execute(query);
result_set = result.fetchall();
data = "[";
for row in result_set:
`row["tag_expression"]`)
data += "{'value': %s , 'key': %s }," % ( `row["tag_expression"]`, `row["tag_name"]` )
data += "]" ;
df = DataFrame(data , columns=columnsss);
Mais quand je passe les données dans DataFrame il me montre pandas.de base.commun.PandasError: DataFrame constructeur n'est pas correctement appelé!.
alors que si j'imprime les données et d'attribuer la même valeur à la variable de données, alors il fonctionne.
source d'informationauteur Ravi khatri
Vous devez vous connecter pour publier un commentaire.
Vous fournir un chaîne représentation d'une dict à la DataFrame constructeur, et pas un dict lui-même. C'est donc la raison pour laquelle vous obtenez l'erreur.
Donc, si vous souhaitez utiliser votre code, vous pouvez faire:
Mais le mieux serait de ne pas créer la chaîne en premier lieu, mais directement le mettre dans un dict. Quelque chose d'à peu près:
Mais même, probablement, ce n'est pas nécessaire, selon ce qui est exactement dans votre
result_set
vous pourriez probablement:DataFrame(result_set)
read_sql_query
fonction pour le faire pour vous (voir docs sur cette)