Guest User

Untitled

a guest
Apr 9th, 2018
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.40 KB | None | 0 0
  1. {
  2. "CUST_LEVEL1" : "ALL CHANNELS",
  3. "CUST_LEVEL2" : "CUSTOMER CHANNEL",
  4. "CUST_LEVEL3" : "Commercial Rebate",
  5. "CUST_LEVEL4" : "Express Scripts Inc.",
  6. "CUST_LEVEL5" : "UBC ESI MC NON STND",
  7. "CUST_LEVEL6" : "BR - 103 OPEN 103-140Price Protection",
  8. "PRODUCT_LEVEL1" : "Allergan USA Inc.",
  9. "PRODUCT_LEVEL2" : "SPECIALIZE",
  10. "PRODUCT_LEVEL3" : "MED DERM",
  11. "PRODUCT_LEVEL4" : "TAZORAC",
  12. "PRODUCT_LEVEL5" : 46,
  13. "PRODUCT_LEVEL6" : "Tazorac .1% Gel 30 G",
  14. "METHODOLOGY" : "",
  15. "CALCULATION_PERIODS" : "",
  16. "FREQ_CAL_START_PERIOD_SID" : "",
  17. "FREQ_CAL_END_PERIOD_SID" : "",
  18. "PERIOD_DATE" : "2015-01-01 00:00:00",
  19. "ACCOUNT_GROWTH" : 2,
  20. "PRODUCT_GROWTH" : 3,
  21. "CCP_DETAILS_SID" : 563275,
  22. "PROJECTION_SALES" : 0,
  23. "PROJECTION_UNITS" : 0,
  24. "ACTUAL_SALES" : 0,
  25. "ACTUAL_UNITS" : 0,
  26. "EXFACTORY_ACTUAL_SALES" : 0,
  27. "EXFACTORY_ACTUAL_UNITS" : 0,
  28. "EXFACTORY_CUST_ACTUAL_SALES" : 0,
  29. "EXFACTORY_CUST_ACTUAL_UNITS" : 0,
  30. "EXFACTORY_FORECAST_SALES" : 0,
  31. "EXFACTORY_FORECAST_UNITS" : 0,
  32. "EXFACTORY_CUST_FORECAST_UNITS" : 0,
  33. "EXFACTORY_CUST_FORECAST_SALES" : 0,
  34. "ITEM_PRICE" : 0
  35. }
  36.  
  37. db = _connect_mongo(host=host, port=port, username=username, password=password, db=db)
  38. # Make a query to the specific DB and Collection
  39. cursor = db['EVENTSTABLE'].find({},{"PERIOD_DATE":1,"CCP_DETAILS_SID":1,"ACCOUNT_GROWTH":1,"PRODUCT_GROWTH":1,"ACTUAL_SALES":1,
  40. "EXFACTORY_FORECAST_SALES":1,"EXFACTORY_FORECAST_UNITS":1,"ITEM_PRICE":1,"PROJECTION_SALES":1})
  41.  
  42. # Expand the cursor and construct the DataFrame
  43. fd = pd.DataFrame(list(cursor))
  44.  
  45. fd['PROJECTION_SALES']=((((fd['ACCOUNT_GROWTH']/100)+1)*((fd['PRODUCT_GROWTH']/100)+1)*
  46. ((fd.groupby(['CCP_DETAILS_SID',fd['PERIOD_DATE'].dt.year])['EXFACTORY_FORECAST_SALES'].transform('sum').divide(
  47. fd.groupby(['CCP_DETAILS_SID',fd['PERIOD_DATE'].dt.year])['EXFACTORY_FORECAST_UNITS'].transform('sum')).
  48. fillna(fd['ITEM_PRICE']*fd['PERIOD_DATE'].dt.daysinmonth.divide((fd.assign(x=fd.PERIOD_DATE.dt.daysinmonth).groupby(['CCP_DETAILS_SID',fd['PERIOD_DATE'].dt.year])['x'].transform('sum'))))))
  49. .pct_change(periods=3).fillna(1)).cumprod()*(fd[fd['PERIOD_DATE'].dt.year==BASE].groupby([fd['PERIOD_DATE'].dt.year,'CCP_DETAILS_SID'])['ACTUAL_SALES'].transform('sum')))
Add Comment
Please, Sign In to add comment