地铁数据分析预测地铁后7天小时客流量
基于八月地铁刷卡数据,以前23天的数据作为训练数据,预测后7天各个地铁站点在6点—23点每个小时的客流量。
import pandas as pd
import time
import numpy as np
import matplotlib.pyplot as plt
使用二分法目的,找到每天的最后一刻 数据的索引
def find_day_index(A,a0,a2):
tA=A
while True:
I1=int(len(tA)/2)-1
I2=I1+1
# 获取I1和I2的日期
t0=int(tA.iloc[I1,0][8:10])
t2=int(tA.iloc[I2,0][8:10])
if t2!=t0:
r=(tA.iloc[I1,0],tA.index[I1])
return r
break
if t2==t0 and t2==a0:
tA=tA.iloc[I2:,:]
if t2==t0 and t2==a2:
tA=tA.iloc[:I1+1,:]
reader = pd.read_csv('#数据.csv',usecols=[6],chunksize=100000)
start = time.perf_counter() #计算耗费时间
# 读取站台信息
A = pd.read_csv('acc_08_final.csv',usecols=[5],nrows=1000)
S = pd.Series(A.iloc[:,0].values)
Ad = S.unique()# 站台信息去重
R_day = [('', -1)]# 存储每天的截止时间下标
for A in reader:
a0 = int(A.iloc[0,0][8:10])
a2 = int(A.iloc[len(A)-1,0][8:10])
if a0 !=a2:
r = find_day_index(A,a0,a2)
R_day.append(r)
end = time.perf_counter()
print("耗时: ",end-start)
#耗时:27.6368365