user min max
1 Tom 1 5
2 Sam 4 6
我得到了这个数据框,现在我知道用户是Sam,我想获得其“最小”值。这样(用户是唯一的):
df[Sam,'min'] = 4
我该怎么做?
答案 0 :(得分:2)
首先按set_index
按列userid
创建索引,然后按loc
选择索引:
df = df.set_index('user')
print (df.index)
Index(['Tom', 'Sam'], dtype='object', name='user')
a = df.loc['Sam','min']
print (a)
4
或将boolean indexing
与loc
一起使用,但由于必须获取Series
,因此请再次选择:
a = df.loc[df['user'] == 'Sam','min'].values[0]
答案 1 :(得分:1)
使用set_index
+ pd.DataFrame.at
访问标量:
res = df.set_index('user').at['Sam', 'min']
print(res)
4