group 拿到最小值行的其他数据
时间: 2023-12-13 16:06:39 浏览: 182
如果你想要获取 group 中最小值所在行的其他数据,可以使用 Pandas 库中的 loc 函数。假设你的 DataFrame 名称为 df,group 列名称为 'Group',最小值所在列名称为 'Value',则可以按照以下方式获取最小值所在行的其他数据:
```python
min_group = df.loc[df.groupby('Group')['Value'].idxmin()] # 获取每个 group 中最小值所在行的 index
min_group_data = df.loc[min_group.index] # 获取最小值所在行的其他数据
```
其中,第一行代码使用 groupby 和 idxmin 函数获取每个 group 中最小值所在行的 index,第二行代码则使用 loc 函数根据 index 获取最小值所在行的其他数据。
相关问题
group by 取最小值
可以使用以下 SQL 语句来实现:
```
SELECT column1, MIN(column2)
FROM table_name
GROUP BY column1;
```
其中,`column1` 是你要进行分组的列,`column2` 是你要取最小值的列。这条语句会按照 `column1` 列进行分组,并且在每个分组内部取 `column2` 列的最小值。
mysql group by 取最小值的所在的记录的其他值
可以使用子查询来实现,先根据最小值进行分组,再通过联合查询获取其他值。
例如,假设有一个表名为 `scores`,包含以下字段:`id, name, subject, score`。需要找出每个科目的最低分以及对应的学生姓名和分数,可以使用以下 SQL 语句:
```
SELECT s.name, s.score, s.subject, t.min_score
FROM scores AS s
JOIN (
SELECT subject, MIN(score) AS min_score
FROM scores
GROUP BY subject
) AS t ON s.subject = t.subject AND s.score = t.min_score;
```
这里先使用子查询找出每个科目的最低分,然后再通过联合查询获取对应的学生姓名和分数。
阅读全文