neighbourhood room_type value
Agios Loukas Entire home/apt 69
Private room 11
Shared room 1
Agios Nikolaos Entire home/apt 193
Private room 33
Akadimia Platonos Entire home/apt 45
Private room 10
Shared room 1
以最大值获取整行的最佳方法是什么。 例如,我想参加
Agios Loukas Entire home/apt 69
Agios Nikolaos Entire home/apt 193
Akadimia Platonos Entire home/apt 45
谢谢你,对不起我的英语
答案 0 :(得分:3)
我相信您需要
第一层的groupby和idxmax
的{{1}}
df.loc[]
out = df.loc[df.groupby(level=0)['value'].idxmax()]
print(out)
或者:
value
neighbourhood room_type
Agios Loukas Entire home/apt 69
Agios Nikolaos Entire home/apt 193
Akadimia Platonos Entire home/apt 45
的最大值,然后等于运算符以求和选择行
groupby+transform
答案 1 :(得分:0)
使用.max()获取列的最大值,并将其放入df.loc []请求的内部,以获取具有该值的所有行。像这样:
data want;
set have;
do row=1 to countw(x,'0D0A'x);
line=scan(x,row,'0D0A'x);
output;
end;
run;