blufzzz

HackSeversteel

Mar 3rd, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.04 KB | None | 0 0
  1. # for Alex. Extraction features for each XG
  2.  
  3. from collections import Counter
  4. n_features = tags.shape[0]
  5.  
  6. xg_types = Counter([tags.iloc[i][1][:12] for i in range(n_features) if  i>0])
  7.  
  8.  
  9. xg4 = [ tags.iloc[i][0] for i in range(n_features)
  10.        if tags.iloc[i][1][:12] == xg_types.keys()[0] ]
  11.  
  12. data_min_xg4 = data_min[xg4]
  13. data_hour_xg4 = data_hour[xg4]
  14.  
  15.  
  16. xg5 = [ tags.iloc[i][0] for i in range(n_features)
  17.        if tags.iloc[i][1][:12] == xg_types.keys()[1] ]
  18.  
  19. data_min_xg5 = data_min[xg5]
  20. data_hour_xg5 = data_hour[xg5]
  21.  
  22.  
  23. xg6 = [ tags.iloc[i][0] for i in range(n_features)
  24.        if tags.iloc[i][1][:12] == xg_types.keys()[2] ]
  25.  
  26. data_min_xg6 = data_min[xg6]
  27. data_hour_xg6 = data_hour[xg6]
  28.  
  29.  
  30. xg7 = [ tags.iloc[i][0] for i in range(n_features)
  31.        if tags.iloc[i][1][:12] == xg_types.keys()[3] ]
  32.  
  33.  
  34. data_min_xg7 = data_min[xg7]
  35. data_hour_xg7 = data_hour[xg7]
  36.  
  37.  
  38. xg8 = [ tags.iloc[i][0] for i in range(n_features)
  39.        if tags.iloc[i][1][:12] == xg_types.keys()[4] ]
  40.  
  41. data_min_xg8 = data_min[xg8]
  42. data_hour_xg8 = data_hour[xg8]
  43.  
  44.  
  45. xg9 = [ tags.iloc[i][0] for i in range(n_features)
  46.        if tags.iloc[i][1][:12] == xg_types.keys()[5] ]
  47.  
  48. data_min_xg9 = data_min[xg9]
  49. data_hour_xg9 = data_hour[xg9]
  50.  
  51.  
  52.  
  53.  
  54. #################### STL DECOMPOSITION
  55.  
  56. import statsmodels.api as sm
  57. import matplotlib.pyplot as plt
  58.  
  59. data_min_xg8 = data_min[xg8]
  60. data_min_OP_E8_1 = data_min_xg8.OP_E8_1
  61. data_min_OP_E8_1.index = pd.to_datetime(data_min.DATATIME, dayfirst = True )
  62.  
  63.  
  64.  
  65. data_min_OP_E8_1.fillna(method = 'pad', inplace= True)
  66.  
  67. data_min_range = pd.date_range(start = pd.datetime(2017, 4, 17), freq = 'H', end = pd.datetime(2018,2,14,14))
  68.  
  69. # i dunno how to adust freq to 'H' then i decided to use  freq = 365
  70. fig = plt.figure(figsize = (90,90))
  71. sm.tsa.seasonal_decompose(pd.DataFrame(data = data_min_xg8.OP_E8_1.values,
  72.                                        index = data_min.DATATIME), freq = 365).plot()
  73. plt.show()
  74.  
  75. print("Критерий Дики-Фуллера: p=%f" % sm.tsa.stattools.adfuller(data_min_xg8.OP_E8_1.values)[1])
Add Comment
Please, Sign In to add comment