Python 索引器:索引超出iloc的范围

Python 索引器:索引超出iloc的范围,python,pandas,Python,Pandas,每当我在mysql中使用pandas sql进行查询,结果只有一行时,我就很难从中选择值 我的命令是: result = psql.read_frame("select id,name,age from tb1 where id=1", con=conn) 然后返回一个数据帧。然而,我希望能够做到: age = result['age'] 但这是不可能的,因为它是一个数据帧。(它创建了一个行的索引,所以这里是0)所以我想让它成为一个系列或dict,当我这样做时: result = resu

每当我在mysql中使用pandas sql进行查询,结果只有一行时,我就很难从中选择值

我的命令是:

result = psql.read_frame("select id,name,age from tb1 where id=1", con=conn)
然后返回一个数据帧。然而,我希望能够做到:

age = result['age'] 
但这是不可能的,因为它是一个数据帧。(它创建了一个行的索引,所以这里是0)所以我想让它成为一个系列或dict,当我这样做时:

result = result.iloc[0]
我明白了

当我尝试时:

result = result.iloc[0].to_dict()
它可以工作,但我得到了一个错误索引器:索引超出范围


我如何才能创建这一单行数据帧的序列或dict?

只需在
loc
中包含列选择器,并使用“:”指示所有列:

result = result.iloc[0, :].to_dict()

假设第0行是您希望转换为dict的行。

使用columns指示符时返回相同的错误。
result = result.iloc[0, :].to_dict()