code: def generateFeatureGroups(fgiContainer, linkageGroups, matchArr, timeKey,
                            massKey, logMassKey, massScalingFactor):
      
      #Generate feature groups from the linked features
      newFgiIds = list()
      for linkageGroup in viewvalues(linkageGroups):
          fgiId = fgiContainer._getNextFgiId()
          fgi = fiGroupFromLinkageGroup(matchArr, linkageGroup, fgiId,
                                        timeKey, massKey
                                        )
          fgiContainer.container[fgiId] = fgi
          fgi.metrics = clusterMetrics(matchArr[timeKey][linkageGroup],
                                       matchArr[logMassKey][linkageGroup],
                                       massScalingFactor=massScalingFactor
                                       )
          fgi.rt = fgi.metrics['meanTime']
          fgi.mz = fgi.metrics['meanMass']
          newFgiIds.append(fgiId)
      return newFgiIds
docs: #TODO: docstring
  
      :param fgiContainer:
      :param linkageGroups:
  
      :returns: a list of ids of the newly generated :class:`Fgi`