计算相邻路的速度位移差值0505-3办公自动化(五)


import pandas as pd  #
import numpy as np
import warnings
warnings.filterwarnings('ignore')

pd.set_option('display.max_rows',None)
# 显示所有行

df = pd.read_excel('Book1_final.xlsx')  #读取源数据
df_group = df.groupby(by='Veh.ID').size().index   # 取相同的值
df1 = df[df['Veh.ID'] == 17]  # 去除第一组

list_sum = []  # 分离源数据
list_finally = []  # 存储最终数据
list_finally.append(df1)  # 提前加入第一个数据


for i in df_group:   # 分离源数据
    list1 = df[df['Veh.ID'] == i]
    list_sum.append(list1)

for i, j in zip(list_sum[0:5], list_sum[1:6]):  #筛选
    list3 = [0] * j.shape[0]   # 预设为0
    list4 = [0] * j.shape[0]
    for k, m ,h in zip(i['Time'], i['Speed'], i['Distance']):
        for l, n , b, a in zip(j['Time'], j['Speed'], j['Distance'], range(len(list3))):
            if k == l:  # 时间条件
                list3[a] = m - n  # 计算
                list4[a] = h - b
    j['△V'] = list3  # 添加数值
    j['△S'] = list4  # 添加数值
    list_finally.append(j)  # 存储最终数据

df_finally = pd.DataFrame()
for i in list_finally:    #合并
    df_finally = pd.concat([df_finally, i])

df_finally['△V'][df_finally['△V'] == 0] = np.nan  #处理0值
df_finally['△S'][df_finally['△S'] == 0] = np.nan

df_finally.to_csv('total.csv', encoding='gb2312', index=None)  # 写入数据

目的是计算相邻路距离、速度的差值,主要是理清逻辑关系。提前设置数据列并设置为零是为提前站好位置,放置漏掉数据,而后将零设置为nan

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值