计算道路等级

该博客介绍了一个计算道路等级的程序,通过经纬度计算距离,速度,然后根据不同的速度范围给道路评级(A, B, C, D)。程序读取数据,提取小时信息,按路段和小时进行数据切片,计算每条道路在不同时间段的服务水平,并保存结果到CSV文件。" 84839193,1407364,React热更新实践与状态保存,"['前端开发', 'React', 'Webpack', '开发工具']
摘要由CSDN通过智能技术生成
# -*- coding: utf-8 -*-
"""
Created on Thu Jun 14 18:44:06 2018

@author: dell
"""

import re
import pandas as pd
import numpy as np
from math import radians, cos, sin, asin, sqrt  




#经纬度计算
def haversine(lon1, lat1, lon2, lat2): # 经度1,纬度1,经度2,纬度2 (十进制度数)  
    """ 
    Calculate the great circle distance between two points  
    on the earth (specified in decimal degrees) 
    """  
    # 将十进制度数转化为弧度  
    lon1, lat1, lon2, lat2 = map(radians, [lon1, lat1, lon2, lat2])   
    # haversine公式  
    dlon = lon2 - lon1   
    dlat = lat2 - lat1   
    a = sin(dlat/2)**2 + cos(lat1) * cos(lat2) * sin(dlon/2)**2  
    c = 2 * asin(sqrt(a))   
    r = 6371 # 地球平均半径,单位为公里  
    return c * r

#速度计算函数
def speedcal(lng1,lat1,lng2,lat2,time3):
    distance=haversine(lng1,lat1,lng2,lat2)
    speed=distance/time3*3600
    return speed
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值