Java计算班车到站时间代码示例
时间: 2023-05-13 20:05:59 浏览: 80
以下是一个简单的 Java 代码示例,用于计算班车到站时间:
```
import java.time.LocalTime;
public class BusSchedule {
public static void main(String[] args) {
LocalTime now = LocalTime.now();
LocalTime busTime = LocalTime.of(8, 30); // 假设班车时间为早上8:30
int minutesToBus = now.until(busTime, java.time.temporal.ChronoUnit.MINUTES);
System.out.println("距离班车到站还有 " + minutesToBus + " 分钟");
}
}
```
这个程序使用了 Java 8 中的 `LocalTime` 类来表示时间,计算当前时间与班车时间之间的分钟数,并输出结果。请注意,这只是一个简单的示例,实际应用中可能需要考虑更多的因素,比如班车的实际到站时间可能会有一定的误差。
相关问题
Java计算班车到站时间
Java计算班车到站时间可以使用当前时间和班车发车时间进行计算,然后加上班车的行驶时间,就可以得到班车到站的时间。具体实现可以使用Java的Date和Calendar类来处理时间,使用SimpleDateFormat类来格式化时间。
用Python写一段lstm算法预测公交到站时间
好的,以下是一段用 Python 编写的 LSTM 算法预测公交到站时间的代码:
```python
import numpy as np
import pandas as pd
from keras.models import Sequential
from keras.layers import Dense, LSTM
# 加载数据集
data = pd.read_csv('bus_data.csv')
# 数据预处理
data['time'] = pd.to_datetime(data['time'])
data['hour'] = data['time'].dt.hour
data['minute'] = data['time'].dt.minute
data['second'] = data['time'].dt.second
data['time_diff'] = data['time'].diff().dt.seconds.fillna(0)
data['time_diff'] = data['time_diff'].apply(lambda x: x if x < 600 else 0)
data['time_diff'] = data['time_diff'].rolling(window=5).mean().fillna(0)
data = data[['hour', 'minute', 'second', 'time_diff']].values
# 划分训练集和测试集
train_size = int(len(data) * 0.8)
train_data, test_data = data[:train_size], data[train_size:]
# 数据归一化
mean = train_data.mean(axis=0)
std = train_data.std(axis=0)
train_data = (train_data - mean) / std
test_data = (test_data - mean) / std
# 构建训练集和测试集
def create_dataset(dataset, look_back=1):
X, Y = [], []
for i in range(len(dataset) - look_back):
X.append(dataset[i:(i + look_back)])
Y.append(dataset[i + look_back])
return np.array(X), np.array(Y)
look_back = 5
train_X, train_Y = create_dataset(train_data, look_back)
test_X, test_Y = create_dataset(test_data, look_back)
# 构建 LSTM 模型
model = Sequential()
model.add(LSTM(50, input_shape=(look_back, 4)))
model.add(Dense(1))
model.compile(loss='mean_squared_error', optimizer='adam')
# 训练模型
model.fit(train_X, train_Y, epochs=100, batch_size=64, verbose=2)
# 预测测试集
test_predict = model.predict(test_X)
test_predict = test_predict * std[3] + mean[3]
test_Y = test_Y * std[3] + mean[3]
# 计算误差
rmse = np.sqrt(np.mean(np.square(test_predict - test_Y)))
print('Test RMSE: %.3f' % rmse)
```
这段代码使用 LSTM 算法对公交到站时间进行预测,数据集来自于 `bus_data.csv` 文件。首先对数据进行预处理,然后划分训练集和测试集,并进行数据归一化。接着构建 LSTM 模型,训练模型并预测测试集,最后计算误差。