我有一个关系数据库格式的数据集(通过各种.csv文件的ID链接)。
我知道每个数据框只包含一个ID值,我想知道从该行中提取值的最简单方法。
我现在在做什么:
# the group has only one element
purchase_group = purchase_groups.get_group(user_id)
price = list(purchase_group['Column_name'])[0]
第三排困扰我,因为它看起来很难看,但我不确定解决方法是什么。分组(我猜)假设可能有多个值并返回一个<class 'pandas.core.frame.DataFrame'>
对象,而我只想返回一行。
答案 0 :(得分:12)
如果你只想要值而不是df / series,那么请调用values
并索引第一个元素[0]
,只需:
price = purchase_group['Column_name'].values[0]
会奏效。
答案 1 :(得分:1)
这种方法很直观;例如,从数据框中获取值的第一行(列表列表中的列表):
np.array(df)[0]
答案 2 :(得分:0)
如果purchase_group
仅具有一行,那么执行purchase_group = purchase_group.squeeze()
会将其分成一系列,因此您只需调用purchase_group['Column_name']
即可获取值