国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

這篇具有很好參考價(jià)值的文章主要介紹了基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

TransBigData是一個(gè)為交通時(shí)空大數(shù)據(jù)處理、分析和可視化而開發(fā)的Python包。TransBigData為處理常見(jiàn)的交通時(shí)空大數(shù)據(jù)(如出租車GPS數(shù)據(jù)、共享單車數(shù)據(jù)和公交車GPS數(shù)據(jù)等)提供了快速而簡(jiǎn)潔的方法。TransBigData為交通時(shí)空大數(shù)據(jù)分析的各個(gè)階段提供了多種處理方法,代碼簡(jiǎn)潔、高效、靈活、易用,可以用簡(jiǎn)潔的代碼實(shí)現(xiàn)復(fù)雜的數(shù)據(jù)任務(wù)。轉(zhuǎn)自同濟(jì)大學(xué)余慶博士的文章:點(diǎn)擊跳轉(zhuǎn)

應(yīng)專業(yè)選修課《數(shù)據(jù)分析與可視化》的期末考核,本人參考了@小旭學(xué)長(zhǎng)的文章:點(diǎn)擊跳轉(zhuǎn)?

本文根據(jù)上述文章,對(duì)該項(xiàng)目進(jìn)行了一些代碼上的修改(在一些可能報(bào)錯(cuò)的地方進(jìn)行了修改),以及增加了對(duì)代碼的解釋以及圖文介紹,并且增加了上海的出租車軌跡數(shù)據(jù)。

本項(xiàng)目作為課程設(shè)計(jì)參考,個(gè)人感覺(jué)本項(xiàng)目在最后的呈現(xiàn)效果上十分出色。該項(xiàng)目使用jupyter notebook開發(fā)環(huán)境。

項(xiàng)目地址:https://gitee.com/scaukzh/visualization

話不多說(shuō),直接看項(xiàng)目。

數(shù)據(jù):

①出租車軌跡數(shù)據(jù)集

來(lái)源:https://people.cs.rutgers.edu/~dz220/data.html

介紹:該數(shù)據(jù)源自國(guó)外大學(xué)一名助理教授,包含了深圳市2013.10.22一天中大約600多輛出租車的軌跡數(shù)據(jù),數(shù)據(jù)包含的信息依次為出租車ID,時(shí)間,緯度,經(jīng)度,占用狀態(tài),速度;入住狀態(tài):1-乘客和0-乘客。數(shù)據(jù)一共大約54w條。

VehicleNum Time Lng Lat OpenStatus Speed
0 34745 20:27:43 113.806847 22.623249 1 27
1 34745 20:24:07 113.809898 22.627399 0 0
2 34745 20:24:27 113.809898 22.627399 0 0
3 34745 20:22:07 113.811348 22.628067 0 0
4 34745 20:10:06 113.819885 22.647800 0 54
... ... ... ... ... ... ...
544994 28265 21:35:13 114.321503 22.709499 0 18
544995 28265 09:08:02 114.322701 22.681700 0 0
544996 28265 09:14:31 114.336700 22.690100 0 0
544997 28265 21:19:12 114.352600 22.728399 0 0
544998 28265 19:08:06 114.137703 22.621700 0 0

544999 rows × 6 columns

補(bǔ)充:我在項(xiàng)目中補(bǔ)充了一個(gè)上海的數(shù)據(jù)集,該數(shù)據(jù)集是香港科技大學(xué)智慧城市研究小組共享的數(shù)據(jù)集,包含上海市2007年02月20日單日若干輛出租車的軌跡數(shù)據(jù)。

②地圖數(shù)據(jù)

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

地圖采用json格式,這個(gè)地圖數(shù)據(jù)用于標(biāo)明深圳區(qū)域的范圍,在后期進(jìn)行繪圖以及數(shù)據(jù)處理的時(shí)候都有作用。

代碼部分:

一、第三方包和數(shù)據(jù)集的導(dǎo)入

1.第三包的導(dǎo)入

import transbigdata as tbd
import pandas as pd
import geopandas as gpd
import matplotlib.pyplot as plt

使用pip命令直接裝transbigdata和geopands包可能會(huì)失敗。不過(guò)transbigdata我已經(jīng)放在項(xiàng)目中去了,大家直接調(diào)用即可。geopands比較容易裝,這里就不詳細(xì)討論了。

2.讀入出租車GPS軌跡數(shù)據(jù)

data = pd.read_csv('D:/code_for_school/visualtaxi/gps_data/shenzhen_taxi_gps.csv', header=None)#修改自身路徑即可
data.columns = ['VehicleNum', 'Time', 'Lng', 'Lat', 'OpenStatus', 'Speed']
data.head()                 #head函數(shù)其中一個(gè)默認(rèn)參數(shù)為5,故只返回頭5條數(shù)據(jù)
VehicleNum Time Lng Lat OpenStatus Speed
0 34745 20:27:43 113.806847 22.623249 1 27
1 34745 20:24:07 113.809898 22.627399 0 0
2 34745 20:24:27 113.809898 22.627399 0 0
3 34745 20:22:07 113.811348 22.628067 0 0
4 34745 20:10:06 113.819885 22.647800 0 54

3.讀入深圳市地圖數(shù)據(jù)

# Read the GeoDataFrame of the study area
sz = gpd.read_file(r'D:/code_for_school/visualtaxi/geo_data/sz.json')#修改自身路徑即可
sz.crs = None
sz.head()
centroid_x centroid_y qh geometry
0 114.143157 22.577605 羅湖 POLYGON ((114.10006 22.53431, 114.10083 22.534...
1 114.041535 22.546180 福田 POLYGON ((113.98578 22.51348, 114.00553 22.513...
2 114.270206 22.596432 鹽田 POLYGON ((114.19799 22.55673, 114.19817 22.556...
3 113.851387 22.679120 寶安 MULTIPOLYGON (((113.81831 22.54676, 113.81948 ...
4 113.926290 22.766157 光明 POLYGON ((113.99768 22.76643, 113.99704 22.766...
sz.plot()

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

二、數(shù)據(jù)處理

1.剔除掉超出深圳地圖范圍的數(shù)據(jù)

# Data Preprocessing
# Delete the data outside of the study area
data = tbd.clean_outofshape(data, sz, col=['Lng', 'Lat'], accuracy=500)  #剔除超出研究區(qū)域的數(shù)據(jù)
data.head(20)
VehicleNum Time Lng Lat OpenStatus Speed
0 34745 20:27:43 113.806847 22.623249 1 27
1 27368 09:08:53 113.805893 22.624996 0 49
2 22998 10:51:10 113.806931 22.624166 1 54
3 22998 10:11:50 113.805946 22.625433 0 43
4 22998 10:12:05 113.806381 22.623833 0 60
5 22396 12:14:28 113.806602 22.623949 1 45
6 32436 08:15:34 113.806465 22.624166 0 50
7 32436 08:15:04 113.807053 22.626350 0 0
8 32436 08:15:19 113.806252 22.625933 0 22
9 32436 08:14:49 113.807053 22.626333 0 0
10 32436 18:10:57 113.806885 22.622967 0 50
11 32436 18:10:27 113.806450 22.626083 0 36
12 32436 18:35:15 113.806686 22.623632 1 29
13 32436 18:10:42 113.805984 22.624683 0 41
14 27373 18:58:43 113.805969 22.624983 0 42
15 27373 08:42:34 113.807114 22.623211 0 61
16 31910 09:49:56 113.806801 22.626200 0 25
17 35161 00:43:41 113.807030 22.622833 1 51
18 35161 00:43:25 113.807098 22.624184 1 54
19 23411 20:20:06 113.806549 22.623550 0 56

如此一來(lái),那些不在深圳市版圖中的數(shù)據(jù)就被我們剔除掉了。

2.對(duì)數(shù)據(jù)按照車輛編號(hào)和時(shí)間順序排好

# Delete the data with instantaneous changes in passenger status
data = tbd.clean_taxi_status(data, col=['VehicleNum', 'Time', 'OpenStatus'])
#刪除出租車數(shù)據(jù)中載客狀態(tài)瞬間變化的記錄,這些記錄的存在會(huì)影響出行訂單判斷。
#判斷條件為:如果對(duì)同一輛車,上一條記錄與下一條記錄的載客狀態(tài)都與本條記錄不同,則本條記錄應(yīng)該刪去
#實(shí)際上就是按照編號(hào)和時(shí)間順序?qū)?shù)據(jù)排好
data.head(30)
VehicleNum Time Lng Lat OpenStatus Speed LONCOL LATCOL
452072 22396 00:00:29 113.996719 22.693333 1 20 81 65
444077 22396 00:01:01 113.995514 22.695032 1 34 81 66
444078 22396 00:01:09 113.995430 22.695766 1 41 81 66
444075 22396 00:01:41 113.995369 22.696484 1 0 81 66
444079 22396 00:02:21 113.995430 22.696650 1 17 81 66
444073 22396 00:03:01 113.994934 22.697884 0 23 81 66
444074 22396 00:03:41 113.992683 22.697350 0 18 81 66
444076 22396 00:04:21 113.992348 22.696733 0 36 81 66
452073 22396 00:05:01 113.992996 22.693632 0 2 81 65
446704 22396 00:05:41 113.989250 22.693083 0 56 80 65
422019 22396 00:06:21 113.986366 22.691000 0 48 79 65
422218 22396 00:07:41 113.988747 22.685450 0 16 80 63
426967 22396 00:08:21 113.989586 22.681749 0 43 80 63
443922 22396 00:09:01 113.986015 22.681583 0 0 79 63
443923 22396 00:09:41 113.986481 22.680332 0 47 79 62
422292 22396 00:10:21 113.988297 22.676416 0 31 80 61
422295 22396 00:11:01 113.991600 22.677517 0 41 80 62
422291 22396 00:11:09 113.992149 22.677317 0 33 80 62
443991 22396 00:11:41 113.993401 22.674368 0 31 81 61
443987 22396 00:11:49 113.993446 22.674217 0 0 81 61

可以看到編號(hào)相同的數(shù)據(jù)是相鄰并且是以時(shí)間推進(jìn)排序的。

3.將數(shù)據(jù)按照經(jīng)緯度進(jìn)行柵格化

柵格化的意思就是把每個(gè)數(shù)據(jù)按照經(jīng)緯度分到不同位置的格子上

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

# Data gridding
# Define the bounds and generate gridding parameters
bounds = [113.6, 22.4, 114.8, 22.9]
params = tbd.area_to_params(bounds, accuracy=500)
params
#(113.6, 22.4, 0.004872390756896538, 0.004496605206422906)
#柵格參數(shù)(lonStart,latStart,deltaLon,deltaLat),分別為柵格左下角坐標(biāo)與單個(gè)柵格的經(jīng)緯度長(zhǎng)寬
# Mapping GPS data to grids
data['LONCOL'], data['LATCOL'] = tbd.GPS_to_grid(data['Lng'], data['Lat'], params)
data.head()
VehicleNum Time Lng Lat OpenStatus Speed LONCOL LATCOL
452072 22396 00:00:29 113.996719 22.693333 1 20 81 65
444077 22396 00:01:01 113.995514 22.695032 1 34 81 66
444078 22396 00:01:09 113.995430 22.695766 1 41 81 66
444075 22396 00:01:41 113.995369 22.696484 1 0 81 66
444079 22396 00:02:21 113.995430 22.696650 1 17 81 66

這一部分完成,我們就已經(jīng)將數(shù)據(jù)劃分在不同的棧格里了。

4.計(jì)算每個(gè)柵格中的數(shù)據(jù)個(gè)數(shù)

# Aggregate data into grids
#python中g(shù)roupby函數(shù)主要的作用是進(jìn)行數(shù)據(jù)的分組以及分組后地組內(nèi)運(yùn)算!
datatest = data.groupby(['LONCOL', 'LATCOL'])['VehicleNum'].count().reset_index()
# Generate the geometry for grids
datatest['geometry'] = tbd.grid_to_polygon([datatest['LONCOL'], datatest['LATCOL']], params)

# Change it into GeoDataFrame
# import geopandas as gpd
datatest = gpd.GeoDataFrame(datatest)
datatest.head()
#計(jì)算出每個(gè)柵格里的出租車數(shù)量(不按時(shí)間,是一天數(shù)據(jù)中所有的點(diǎn))
LONCOL LATCOL VehicleNum geometry
0 36 63 3 POLYGON ((113.77297 22.68104, 113.77784 22.681...
1 36 64 2 POLYGON ((113.77297 22.68553, 113.77784 22.685...
2 36 65 1 POLYGON ((113.77297 22.69003, 113.77784 22.690...
3 36 66 1 POLYGON ((113.77297 22.69453, 113.77784 22.694...
4 36 67 8 POLYGON ((113.77297 22.69902, 113.77784 22.699...

LONCOL代表經(jīng)度上第幾個(gè)棧格,LATCOL代表維度上第幾個(gè)棧格,VehicleNum表示了這個(gè)棧格中數(shù)據(jù)的數(shù)量,可用于后面進(jìn)行GPS軌跡熱力圖的繪圖。

5.OD訂單的處理

①將各個(gè)數(shù)據(jù)轉(zhuǎn)化成OD數(shù)據(jù)(每一個(gè)數(shù)據(jù)代表狀態(tài))

載客狀態(tài)無(wú)非就兩種狀態(tài),即(載客-空載-載客)和(空載-載客-空載)。

# Extract taxi OD from GPS data
#OD形成就是每一個(gè)訂單都算一個(gè)OD行程,每一行代表一個(gè)OD行程
#stime代表出發(fā)時(shí)間,slon和slat是出發(fā)的經(jīng)緯度
#etime代表結(jié)束時(shí)間,elon和elat是結(jié)束的經(jīng)緯度
#   ID是訂單順序號(hào)
oddata = tbd.taxigps_to_od(data,col = ['VehicleNum', 'Time', 'Lng', 'Lat', 'OpenStatus'])
oddata
VehicleNum stime slon slat etime elon elat ID
427075 22396 00:19:41 114.013016 22.664818 00:23:01 114.021400 22.663918 0
131301 22396 00:41:51 114.021767 22.640200 00:43:44 114.026070 22.640266 1
417417 22396 00:45:44 114.028099 22.645082 00:47:44 114.030380 22.650017 2
376160 22396 01:08:26 114.034897 22.616301 01:16:34 114.035614 22.646717 3
21768 22396 01:26:06 114.046021 22.641251 01:34:48 114.066048 22.636183 4
... ... ... ... ... ... ... ... ...
175519 36805 22:49:12 114.114365 22.550632 22:50:40 114.115501 22.557983 5083
212092 36805 22:52:07 114.115402 22.558083 23:03:12 114.118484 22.547867 5084
119041 36805 23:03:45 114.118484 22.547867 23:20:09 114.133286 22.617750 5085
224103 36805 23:36:19 114.112968 22.549601 23:43:12 114.089485 22.538918 5086
170962 36805 23:46:14 114.091217 22.540768 23:53:36 114.120354 22.544300 5087

5088 rows × 8 columns

②將od行程分為載客狀態(tài)下和空載狀態(tài)下的

data_deliver, data_idle = tbd.taxigps_traj_point(data,oddata,col=['VehicleNum',
                                                                  'Time',
                                                                  'Lng',
                                                                  'Lat',
                                                                  'OpenStatus'])
data_deliver #載客狀態(tài)的od路徑
VehicleNum Time Lng Lat OpenStatus Speed LONCOL LATCOL ID flag
427075 22396 00:19:41 114.013016 22.664818 1 63.0 85.0 59.0 0.0 1.0
427085 22396 00:19:49 114.014030 22.665483 1 55.0 85.0 59.0 0.0 1.0
416622 22396 00:21:01 114.018898 22.662500 1 1.0 86.0 58.0 0.0 1.0
427480 22396 00:21:41 114.019348 22.662300 1 7.0 86.0 58.0 0.0 1.0
416623 22396 00:22:21 114.020615 22.663366 1 0.0 86.0 59.0 0.0 1.0
... ... ... ... ... ... ... ... ... ... ...
64411 36805 23:53:09 114.120354 22.544300 1 2.0 107.0 32.0 5087.0 1.0
64405 36805 23:53:15 114.120354 22.544300 1 1.0 107.0 32.0 5087.0 1.0
64390 36805 23:53:21 114.120354 22.544300 1 0.0 107.0 32.0 5087.0 1.0
64406 36805 23:53:27 114.120354 22.544300 1 0.0 107.0 32.0 5087.0 1.0
64393 36805 23:53:33 114.120354 22.544300 1 0.0 107.0 32.0 5087.0 1.0

209250 rows × 10 columns

data_idle #空載狀態(tài)的od路徑
VehicleNum Time Lng Lat OpenStatus Speed LONCOL LATCOL ID flag
416628 22396 00:23:01 114.021400 22.663918 0 25.0 86.0 59.0 0.0 0.0
396136 22396 00:23:41 114.023148 22.665100 0 21.0 87.0 59.0 0.0 0.0
396129 22396 00:24:21 114.024414 22.665367 0 35.0 87.0 59.0 0.0 0.0
401744 22396 00:25:01 114.027115 22.662100 0 25.0 88.0 58.0 0.0 0.0
394630 22396 00:25:41 114.024551 22.659834 0 21.0 87.0 58.0 0.0 0.0
... ... ... ... ... ... ... ... ... ... ...
170971 36805 23:45:42 114.091217 22.540768 0 0.0 101.0 31.0 5086.0 0.0
170954 36805 23:45:57 114.091217 22.540768 0 0.0 101.0 31.0 5086.0 0.0
170955 36805 23:46:12 114.091217 22.540768 0 0.0 101.0 31.0 5086.0 0.0
64391 36805 23:53:36 114.120354 22.544300 0 0.0 107.0 32.0 5087.0 0.0
64396 36805 23:53:51 114.120354 22.544300 0 0.0 107.0 32.0 5087.0 0.0

332941 rows × 10 columns

可以看出載客狀態(tài)下數(shù)據(jù)有20w條,而空載狀態(tài)下數(shù)據(jù)有33w條,說(shuō)明在一天的過(guò)程中,總體上處于空載狀態(tài)的時(shí)間是大于載客狀態(tài)的時(shí)間的。
?

三、繪圖以及可視化展示

1.GPS軌跡的熱力圖繪制

# Plot the grids
fig = plt.figure(1, (16, 6), dpi=300)
ax1 = plt.subplot(111)
#ax用于調(diào)整大小 
# tbd.plot_map(plt, bounds, zoom=10, style=4)
datatest.plot(ax=ax1, column='VehicleNum', legend=True)
plt.xticks([], fontsize=10)
plt.yticks([], fontsize=10)
plt.title('Taxi GPS track point count', fontsize=12);

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

# Plot the grids
fig = plt.figure(1, (16, 6), dpi=300) # 確定圖形高為6,寬為8;圖形清晰度
ax1 = plt.subplot(111)
datatest.plot(ax=ax1, column='VehicleNum', legend=True, scheme='quantiles')
# plt.legend(fontsize=10)
plt.xticks([], fontsize=10)
plt.yticks([], fontsize=10)
plt.title('Taxi GPS track point count', fontsize=12);

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

# Plot the grids
fig = plt.figure(1, (16, 6), dpi=150) # 確定圖形高為6,寬為8;圖形清晰度
ax1 = plt.subplot(111)
datatest.plot(ax=ax1, column='VehicleNum', legend=True, cmap='OrRd', scheme='quantiles')
# plt.legend(fontsize=10)
plt.xticks([], fontsize=10)
plt.yticks([], fontsize=10)
plt.title('Taxi GPS track point count', fontsize=12);

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

?2.載客狀態(tài)和空載狀態(tài)下的od訂單圖

traj_deliver = tbd.points_to_traj(data_deliver)
traj_deliver.plot()

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

traj_idle = tbd.points_to_traj(data_idle)
traj_idle.plot()

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

?3.依賴keplergl第三方包繪制可交互式的可視化動(dòng)畫

keplergl是由Uber開源的一款地理數(shù)據(jù)可視化工具,我們可以在Jupyter notebook中使用該工具讓我們的數(shù)據(jù)可視化做到美觀。使用前需要先安裝,安裝教程可參考該篇文章:點(diǎn)擊跳轉(zhuǎn)

keplergl官網(wǎng):點(diǎn)擊跳轉(zhuǎn)

①可交互式熱力圖

# 可視化數(shù)據(jù)點(diǎn)分布
tbd.visualization_data(data,col = ['Lng','Lat'],accuracy=40,height = 500) #accuracy是柵格大小,數(shù)值越大表示一個(gè)柵格涵蓋地圖面積越大

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

②可交互式OD訂單圖

# 可視化數(shù)據(jù)點(diǎn)分布
tbd.visualization_od(oddata,accuracy=2000,height = 500)

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化?注:同時(shí)使用Ctrl和鼠標(biāo)左鍵可移動(dòng)觀看視角

③可交互式的視頻動(dòng)圖

tbd.visualization_trip(data_deliver)  #一天當(dāng)中的所有載客軌跡

基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化

?總結(jié)

大家按照上述步驟進(jìn)行項(xiàng)目,大問(wèn)題是沒(méi)有的,之前我遇到的主要問(wèn)題就是transbigdata的包找了半天,其他的一些如各個(gè)包版本之間不適配的問(wèn)題,可以直接百度解決。本項(xiàng)目的主要難點(diǎn)就是要去理解數(shù)據(jù)處理的一些函數(shù),這些函數(shù)的大概功能我已經(jīng)在注釋中和內(nèi)容中闡述了。如果有小伙伴想更加深入的了解函數(shù)的原理,可以去看transbigdata的源代碼,這樣可以更加直觀的了解這些函數(shù)。

補(bǔ)充

如有其他問(wèn)題,請(qǐng)私信我,謝謝。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-427575.html

到了這里,關(guān)于基于python的transbigdata實(shí)現(xiàn)出租車軌跡數(shù)據(jù)分析與可視化的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 出租車GPS軌跡數(shù)據(jù)分析

    出租車GPS軌跡數(shù)據(jù)分析

    ?使用numpy、pandas等完成“00.csv”文件讀??; ?剔除無(wú)效數(shù)據(jù):GPS 采集出租車軌跡數(shù)據(jù)的過(guò)程中,可能因設(shè)備問(wèn)題 導(dǎo)致數(shù)據(jù)沒(méi)有采集到,故而在原始軌跡數(shù)據(jù)集中記錄為空值。因此,需 要將每個(gè)采樣點(diǎn)中有效字段為空值的數(shù)據(jù)進(jìn)行剔除,即剔除 DeviceID、 Longitude、Latitude、

    2024年02月04日
    瀏覽(29)
  • 基于單片機(jī)出租車計(jì)價(jià)器設(shè)計(jì)

    基于單片機(jī)出租車計(jì)價(jià)器設(shè)計(jì)

    ?功能介紹 以51單片機(jī)作為主控系統(tǒng); 1602液晶屏顯示最初的起步價(jià),里程收費(fèi),等待時(shí)間收費(fèi); 按鍵調(diào)整起步價(jià),里程收費(fèi),等待時(shí)間收費(fèi); 電機(jī)旋轉(zhuǎn),通過(guò)霍爾傳感器檢測(cè)轉(zhuǎn)速,來(lái)模擬出租車行駛; 電路圖 仿真圖 元器件清單 B1 5V直流電機(jī)+托盤(粘好磁鐵) BT1 2032紐扣電

    2024年02月11日
    瀏覽(31)
  • 【Vivado】基于FPGA的出租車計(jì)價(jià)表設(shè)計(jì)

    【Vivado】基于FPGA的出租車計(jì)價(jià)表設(shè)計(jì)

    學(xué)校FPGA設(shè)計(jì)結(jié)課課設(shè) 主要做了出租車計(jì)價(jià)表,一個(gè)比較舊的課題,代碼如下: 分模塊編程,按照價(jià)目表寫代碼,具體注釋見(jiàn)代碼。 在module里新加一個(gè) input 變量 key_stage ,用 key_stage 表示不同車流量段,用以計(jì)數(shù) 在module里新增一個(gè)變量 state 來(lái)限定是在白天還是夜間

    2024年02月04日
    瀏覽(35)
  • 0097-基于單片機(jī)的出租車計(jì)價(jià)器仿真設(shè)計(jì)

    0097-基于單片機(jī)的出租車計(jì)價(jià)器仿真設(shè)計(jì)

    1、采用51/52單片機(jī)作為主控芯片; 2、采用1602液晶顯示:里程、計(jì)價(jià)、實(shí)時(shí)時(shí)間、實(shí)時(shí)單價(jià)、本次行程計(jì)時(shí); 3、采用DS1302作為時(shí)鐘芯片; 4、支持切換顯示界面、設(shè)置日期時(shí)間、設(shè)置白天單價(jià)、設(shè)置夜晚單價(jià); 5、支持分別設(shè)置3千米內(nèi)的單價(jià)、3千米外的單價(jià)、等待時(shí)的單價(jià)

    2024年02月20日
    瀏覽(28)
  • 【C51】基于51單片機(jī)的出租車計(jì)價(jià)器設(shè)計(jì)

    【C51】基于51單片機(jī)的出租車計(jì)價(jià)器設(shè)計(jì)

    隨著我國(guó)經(jīng)濟(jì)的快速發(fā)展,出行選擇乘坐出租車的人越來(lái)越多。與此同時(shí)電子信息技術(shù)的發(fā)展更新,更加準(zhǔn)確、便捷、穩(wěn)定的出租車計(jì)價(jià)收費(fèi)系統(tǒng)隨之出現(xiàn)?;趩纹瑱C(jī)的出租車計(jì)價(jià)系統(tǒng)的設(shè)計(jì),不僅可以更加準(zhǔn)確、穩(wěn)定的反映計(jì)價(jià)情況,也能促進(jìn)出租車行業(yè)健康穩(wěn)定的發(fā)展

    2024年02月03日
    瀏覽(26)
  • 【華為OD統(tǒng)一考試B卷 | 100分】出租車計(jì)費(fèi) 、靠譜的車(C++ Java JavaScript Python)

    華為OD在線OJ:出租車計(jì)費(fèi) 、靠譜的車 已購(gòu)買本專欄用戶,請(qǐng)私信博主開通賬號(hào),在線刷題?。?! 在線OJ:立即刷題 題庫(kù)專欄:2023華為OD機(jī)試(A卷+B卷)(C++JavaJSPy) 題目描述:出租車計(jì)費(fèi) 、靠譜的車 程序員小明打了一輛出租車去上班。出于職業(yè)敏感,他注意到這輛出租車的計(jì)

    2024年02月08日
    瀏覽(28)
  • 出租車計(jì)價(jià)c語(yǔ)言

    本關(guān)任務(wù):根據(jù)某城市普通出租車收費(fèi)標(biāo)準(zhǔn)編寫程序?qū)囐M(fèi)進(jìn)行計(jì)算。具體標(biāo)準(zhǔn)如下: 起步里程為3km,起步費(fèi)為10元;10km以內(nèi)超起步里程部分,每千米2元,超過(guò)10km以上的部分加收50%的回空補(bǔ)貼費(fèi),即每千米3元。營(yíng)運(yùn)過(guò)程中,因堵車及乘客要求臨時(shí)停車的,按每5分鐘2元計(jì)收

    2024年02月07日
    瀏覽(28)
  • Java語(yǔ)言怎么編寫一個(gè)程序計(jì)算出租車的運(yùn)輸費(fèi)用:出租車起步15公里以內(nèi)20塊錢,需要支付調(diào)頭費(fèi)用

    下面是一個(gè)Java語(yǔ)言編寫的計(jì)算出租車運(yùn)輸費(fèi)用的程序: ? ```java import java.util.Scanner; ? public class TaxiFareCalculator { ? ? public static void main(String[] args) { ? ? ? ? Scanner input = new Scanner(System.in); ? ? ? ? ? System.out.print(\\\"請(qǐng)輸入出租車行駛的里程(公里):\\\"); ? ? ? ? double distance

    2024年02月12日
    瀏覽(29)
  • FPGA出租車計(jì)費(fèi)系統(tǒng)設(shè)計(jì)

    FPGA出租車計(jì)費(fèi)系統(tǒng)設(shè)計(jì)

    ? ? ? ? 設(shè)計(jì)一個(gè)簡(jiǎn)易的出租車計(jì)費(fèi)系統(tǒng),實(shí)現(xiàn)計(jì)價(jià)功能,計(jì)費(fèi)標(biāo)準(zhǔn)為按里程收費(fèi), 起步價(jià)為6.00 元,當(dāng)里程小于3公里時(shí),按起步價(jià)收費(fèi), 超過(guò)3公里后按1.2元 /公里收費(fèi)。 ? ? ? ? 實(shí)現(xiàn)車輛行駛的模擬:能模擬汽車的 啟動(dòng),暫停,停止 等狀態(tài)。 ? ? ? ? 計(jì)費(fèi)顯示部分設(shè)計(jì)

    2024年02月04日
    瀏覽(28)
  • LeetCode 2008. 出租車的最大盈利:動(dòng)態(tài)規(guī)劃 + 哈希表

    力扣題目鏈接:https://leetcode.cn/problems/maximum-earnings-from-taxi/ 你駕駛出租車行駛在一條有 n ?個(gè)地點(diǎn)的路上。這 n ?個(gè)地點(diǎn)從近到遠(yuǎn)編號(hào)為? 1 ?到? n ?,你想要從 1 ?開到 n ?,通過(guò)接乘客訂單盈利。你只能沿著編號(hào)遞增的方向前進(jìn),不能改變方向。 乘客信息用一個(gè)下標(biāo)從 0 ?開

    2024年02月04日
    瀏覽(29)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包