使用Python中的pandas库来处理数据,首先将数据读入到一个Dataframe中,然后对ID和Category进行分组,接着对每组数据进行排序并计算其进出日期,最后将结果保存到新的Dataframe中。
代码示例:
import pandas as pd
# 读取数据
data = pd.read_csv('data.csv')
# 按ID和Category分组
grouped = data.groupby(['ID', 'Category'])
# 处理每组数据
result = pd.DataFrame()
for name, group in grouped:
# 对每组数据按日期排序
group = group.sort_values('Date')
# 计算进出日期
enter_date = group.iloc[0]['Date']
exit_date = group.iloc[-1]['Date']
# 将结果保存到新的Dataframe中
result = result.append({
'ID': name[0],
'Category': name[1],
'Enter_Date': enter_date,
'Exit_Date': exit_date
}, ignore_index=True)
# 输出结果
print(result)
注意:上述代码中的data.csv
文件应包含以下内容:
ID,Category,Date
1,A,2020-01-01
1,A,2020-01-05
1,B,2020-02-01
2,A,2020-03-01
2,A,2020-03-05
2,B,2020-04-01
上一篇:按ID合并行并添加两个观测