import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
#读取Excel文件中的数据,包括输入流量、实际输出流量、流量差和时间间隔等
filename = r" C:\Users\李\Desktop\习题三.xlsx"
data = pd.read_excel(filename, sheet_name='Sheet1', header=None, skiprows=6, usecols=[0, 1, 2, 3]).values
t = 1 # 单位时段为12h
Qu = data[:, 1]
n = len(Qu)
Qd = data[:, 2]
q = data[:, 3]
I = Qu # input
O = Qd - q # output
bianhua = I - Qd
# 选取带入的x个数为k^2个,进行k^2次运算
k = 3
kk = k**2
xx = np.arange(0.2, 0.401, 0.2/kk)
poa = [] # 储存试算的预报流量结果
for m in range(kk):
delt_W = np.zeros(n)
W = np.zeros(n)
x = xx[m]
plt.subplot(k, k, m+1)
for i in range(1, n):
delt_W[i] = t * (bianhua[i] + bianhua[i-1]) / 2
W[i] = delt_W[i] + W[i-1]
Q_e = x * I + (1 - x) * O # Q‘
r = np.polyfit(Q_e, W, 1)
K = r[0]
# 直线拟合R2
QQ
水文预报马斯京根演算python程序
最新推荐文章于 2024-05-21 15:39:16 发布