【发布时间】:2019-12-19 17:29:10
【问题描述】:
这里我有三个 csv 文件,我将这三个 cv 文件合并在一起。根据求和方程,我试图找到 Y 值。
然后,y 值随时间绘制。当我绘制图表时,我的第一行和图表的最后一行相互连接。
我不知道为什么会这样。谁能帮我解决这个问题?
我的代码:
df1 = pd.read_csv('data1.csv',"," )
df2 = pd.read_csv('data2.csv',"," )
df3 = pd.read_csv('data3.csv',"," )
df1 = pd.DataFrame(df1, columns=['date','time','x'])
df2 = df1.copy()
df3 = df1.copy()
data = df1.append([df2, df3])
等式之后:
我的求和方程,
n = 两行之间的时间差
我的代码:
def y_convert(X,time):
Y=0
if x == 10:
for k in range(0,time):
Y=np.sum(X*k)
else:
for k in range(0,time):
Y=np.sum(X*k)
return Y
然后将时差转换为分钟,然后应用此代码找到 y
data['time_diff'] = pd.to_datetime(data["time"])
data['delta'] = (data['time_diff']-data['time_diff'].shift()).fillna(0)
data['t'] = data['delta'].apply(lambda x: x / np.timedelta64(1,'m')).astype('int64') % (24*60)
X = data['X'].astype(int)
time=data['t'].astype(int)
Y = data.apply(lambda x: y_convert(x.X,x.time), axis=1)
然后我尝试绘制图表
data['date'] = pd.to_datetime(data['date'] + " " + data['time'], format='%d/%m/%Y %H:%M:%S', dayfirst=True)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(data['date'], data['Y'])
ax.set_xlabel
ax.set_ylabel
plt.show()
我的 csv 文件:(一个 csv 文件的格式)
【问题讨论】:
-
@ZarakiKenpachi 不,这个问题没有我的问题的答案。
标签: python-3.x pandas time