Advertisement
vishneva_olga

Untitled

Oct 21st, 2023
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.68 KB | None | 0 0
  1. # запрос к базе
  2.  
  3. part_query = """
  4. SELECT LocationId,
  5.       ProductId,
  6.       DATEPART(MONTH, Datetime) AS MonthQ,
  7.       SUM(Quantity) AS SumQ
  8. FROM dbo.LocationStateHourSales AS l
  9. WHERE l.Quantity >= 0
  10. GROUP BY LocationId, ProductId, DATEPART(MONTH, Datetime)
  11. ORDER BY LocationId, DATEPART(MONTH, Datetime)
  12. """
  13.  
  14. part_sales = pd.read_sql(part_query, conn)
  15. part_sales
  16.  
  17. # фильтруем данные для работы (до указанной)
  18. # в этом датафрейме уже есть Target, и нет вероятности
  19.  
  20. train_df_work = train_df.query('ValidationDateTime < "2023-07-15"')
  21. train_df_work
  22.  
  23. # объединяю две таблицы
  24.  
  25. merge_df = pd.merge(train_df_work, part_sales, how='left', on=['LocationId', 'ProductId'])
  26. merge_df.head(10)
  27.  
  28. # один признак булева типа переведем в int (0 и 1)
  29. merge_df['Column19'] = merge_df['Column19'].astype(int)
  30.  
  31. # далее больше кусками удалила признаки:
  32. 'Column9', 'Column10', 'Column26', 'Column66',
  33. 'Column58', 'Column59', 'Column60', 'Column61',
  34. 'Column62', 'Column63', 'Column64', 'Column65',
  35. 'Column67', 'Column8', 'Column13', 'Column20',
  36. 'Column21', 'Column22', 'Column28'
  37.  
  38. # пропуски в трех катег. заменила на наиболее часто встр.
  39. 'Column45', 'Column46', 'Column47'
  40.  
  41. # сформировала список категориальных
  42. # передавала модели при обучении
  43. categorical_features = ['Column45', 'Column46', 'Column47', 'LocationId', 'ProductId', 'MonthQ']
  44.  
  45. # при разделении на X и y грохала 'ValidationDateTime'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement