如何删除表格重复项并仅保留最后一条记录?
删除重复项并保留每组最后一条记录的方法
在数据处理中,需按指定列(示例为Var1)识别重复组,仅保留每组的最后一条记录。
原数据
| Var1 | Var2 |
|---|---|
| 1 | F |
| 2 | H |
| 2 | F |
| 3 | H |
期望处理结果
| Var1 | Var2 |
|---|---|
| 1 | F |
| 2 | F |
| 3 | H |
1. Excel 操作步骤
- 给数据添加辅助列:在最后一列输入
=ROW()并下拉填充,生成行序号(用于锁定原数据顺序) - 排序:点击「数据」→「排序」,设置主关键字为
Var1(升序),次关键字为辅助列(降序),确保每组内最后一行排在最前 - 删除重复值:点击「数据」→「删除重复值」,仅勾选
Var1列,点击确定后删除辅助列即可
2. Python (Pandas) 实现代码
import pandas as pd # 构造示例数据(实际可通过pd.read_excel/csv读取文件) df = pd.DataFrame({ 'Var1': [1, 2, 2, 3], 'Var2': ['F', 'H', 'F', 'H'] }) # 按Var1分组,保留每组最后一行 result_df = df.groupby('Var1', as_index=False).last() print(result_df)
3. R 语言实现代码
library(dplyr) # 构造示例数据 df <- data.frame( Var1 = c(1, 2, 2, 3), Var2 = c("F", "H", "F", "H") ) # 分组取每组最后一行 result_df <- df %>% group_by(Var1) %>% slice_tail(n = 1) %>% ungroup() print(result_df)
内容的提问来源于stack exchange,提问作者Zaggamim
相关产品推荐
相关产品推荐

