Advertisement
Guest User

Untitled

a guest
Nov 13th, 2019
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.96 KB | None | 0 0
  1. import pandas as pd
  2. import numpy as np
  3. import matplotlib.pyplot as plt
  4. import torch
  5. import torch.nn as nn
  6. import torch.nn.functional as F
  7. import torch.optim as optim
  8. from sklearn.metrics import accuracy_score
  9. from torch.autograd import Variable
  10. from datetime import datetime
  11.  
  12.  
  13. # %% Data
  14.  
  15. skips.append(list(range(70465, 77016)))
  16. data_raw = pd.read_excel('Fruedal.xlsx', skiprows = list(range(1,9096)))
  17. data_raw = data_raw[0:61368]
  18. leak = pd.read_excel('Fruedal.xlsx', sheet_name='Leak')
  19.  
  20. #%%
  21. M = data_raw.shape[0]
  22. LogTime = list()
  23. LogLeak = list()
  24. for i in range(M):
  25. list.append(LogTime, datetime.strptime(data_raw['LogDate'][i], "%Y-%m-%d %H:%M:%S.%f"))
  26. if data_raw['LogDate'][i] in set(leak['LogDate']):
  27. list.append(LogLeak, 1)
  28. else:
  29. list.append(LogLeak, 0)
  30. data_raw['LogTime'] = LogTime
  31. data_raw['LogLeak'] = LogLeak
  32. last_hour = datetime.time(data_raw['LogTime'][5])
  33. data = list()
  34. leaks = list()
  35. log = list()
  36. for i in range(M):
  37. if datetime.time(data_raw['LogTime'][i]) <= last_hour:
  38. list.append(data, data_raw[440][i])
  39. list.append(leaks, data_raw['LogLeak'][i])
  40. list.append(log, data_raw['LogDate'][i])
  41. data = np.asarray(data)
  42. leaks = np.asarray(leaks)
  43. log = np.asarray(log)
  44. num_days = 7
  45. N = data.shape[0]
  46. num_inputs = int(N/6-(num_days-1)*6)
  47. inputs = np.zeros((num_inputs, num_days*6))
  48. targets = np.zeros(num_inputs)
  49. logDate = list()
  50. for i in range(num_inputs):
  51. inputs[i] = data[i*6:num_days*6+i*6]
  52. targets[i] = int(np.max(leaks[num_days*6+i*6-6:num_days*6+i*6]))
  53. list.append(logDate, log[num_days*6+i*6-1])
  54. logDate = np.asarray(logDate)
  55.  
  56. t = 0.6
  57. s = (1-t)/2
  58. x_train = inputs[:int(num_inputs*t)]
  59. y_train = targets[:int(num_inputs*t)].reshape(-1,1)
  60. x_val = inputs[int(num_inputs*t):int(num_inputs*(t+s))]
  61. y_val = targets[int(num_inputs*t):int(num_inputs*(t+s))].reshape(-1,1)
  62. x_test = inputs[int(num_inputs*(t+s)):]
  63. y_test = targets[int(num_inputs*(t+s)):].reshape(-1,1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement