input: Write a function to compute the moving average of time-series data points. Given a list of data points and a window size, the function should return a list of the moving averages.
  
  def moving_average(data_points, window):
      moving_averages = []
      for index in range(len(data_points)):
          start = 0 if index-window+1 < 0 else index-window+1
          window_data = data_points[start:index+1]
          average = sum(window_data)/len(window_data)
          moving_averages.append(average)
  
      return moving_averages
  
  assert moving_average([3, 5, 7, 2, 8, 10, 11, 65, 72, 81, 99, 100, 150], 3) == [3.0, 4.0, 5.0, 4.666666666666667, 5.666666666666667, 6.666666666666667, 9.666666666666666, 28.666666666666668, 49.333333333333336, 72.66666666666667, 84.0, 93.33333333333333, 116.33333333333333]
  assert moving_average([1, 2, 3, 4, 5], 2) == [1.0, 1.5, 2.5, 3.5, 4.5]
  assert moving_average([4, 8, 6, -1, -2, 5, 8, 10], 4) == [4.0, 6.0, 6.0, 4.25, 2.75, 1.5, 3.5, 5.25]
  assert moving_average([], 2) == []
output: def moving_average(data_points, window):
      moving_averages = []
      for index in range(len(data_points)):
          start = max(0, index - window + 1)
          window_data = data_points[start:index + 1]
          average = sum(window_data) / len(window_data)
          moving_averages.append(average)
      return moving_averages