我是 Python 的新手,在以键和值的格式创建 Dataframe
时遇到问题,即
data = [{'key':'\[GlobalProgramSizeInThousands\]','value':'1000'},]
这是我的代码:
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);
但是当我将数据传递给 DataFrame
它显示了我
pandas.core.common.PandasError:未正确调用 DataFrame 构造函数!
而如果我打印数据并将相同的值分配给数据变量,那么它就可以工作。
原文由 Ravi khatri 发布,翻译遵循 CC BY-SA 4.0 许可协议
您正在向 DataFrame 构造函数提供字典的 字符串 表示形式,而不是字典本身。所以这就是您收到该错误的原因。
所以如果你想使用你的代码,你可以这样做:
但最好不要首先创建字符串,而是直接将其放入字典中。大致是这样的:
但可能甚至不需要,因为取决于您的
result_set
中的内容,您可能会:DataFrame(result_set)
read_sql_query
函数为您执行此操作(请参阅相关 文档)