a = [['John', 'Mary', 'John'], [10,22,50]])
df1 = pd.DataFrame(a, columns=['Name', 'Count'])
Run Code Online (Sandbox Code Playgroud)
给定这样的数据框,我想将“名称”的所有类似字符串值与“计数”值进行比较以确定最高值。我不确定如何在 Python 的数据框中执行此操作。
例如:在上述情况下,答案将是:
较低的值 John 10 已被删除(我只想看到基于“Name”的相同值的“Count”的最高值)。
在 SQL 中,它类似于 Select Case 查询(其中我选择 Case where Name == Name & Count > Count recursively 以确定最高数字。或者每个名称的 For 循环,但据我了解,DataFrames 中的循环是由于对象的性质,这个主意不好。
有没有办法用 Python 中的 DF 来做到这一点?我可以为每个变量创建一个新的数据框(一个只有 John,然后获得最高值 (df.value()[:1] 或类似值。但因为我有数百个独特的条目,这似乎是一个糟糕的解决方案。 :D