cjwddxlb 2019-08-09 18:01 采纳率: 100%
浏览 1289
已采纳

python dataframe操作

要求:
四列 id,x,y,t的一个dataframe。
对每个id内部,如果两条记录t相同,则对两条记录的x,y求平均,得到一条新记录,然后插入后删除旧的记录

假设所有数据按照id小在前,相等时t小在前排列

  • 写回答

2条回答 默认 最新

  • 百里吹雪 2019-08-15 16:26
    关注
    import pandas as pd
    
    df = pd.read_excel(r'aa.xlsx')
    print(df)
    
    result = pd.DataFrame(df.groupby(['id', 't']).mean().reset_index())
    print(result)
    
    数据:
    
       id  x  y  t
    0   1  1  1  1
    1   2  2  2  2
    2   2  3  3  3
    3   3  4  4  3
    4   3  5  5  3
    5   3  6  6  3
    6   4  7  7  4
    7   5  8  8  5
    
    结果:
    
       id  t  x  y
    0   1  1  1  1
    1   2  2  2  2
    2   2  3  3  3
    3   3  3  5  5
    4   4  4  7  7
    5   5  5  8  8
    
    如果要调整列的顺序,展现的时候调整一下就好。
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥100 需求高精度PT100设计电路和算法
  • ¥15 单片机配网,继电器开关,广播
  • ¥60 Qcustomplot绘制实时动态曲线
  • ¥20 运用matlab画x-y图
  • ¥15 用idea运行项目,运行tomcat报错:断言失败
  • ¥15 Sqlserver查询链接服务器数据问题
  • ¥15 Bibtex4Word 引用中文文献
  • ¥20 用opencv c/c++ 转换成灰度图,然后做一下直方图均衡,输出mp4文件
  • ¥20 matlab中的双层数值积分
  • ¥50 服务器打印水晶报表问题