code: def localCiteStats(self, pandasFriendly = False, keyType = "citation"):
          count = 0
          recCount = len(self)
          progArgs = (0, "Starting to get the local stats on {}s.".format(keyType))
          if metaknowledge.VERBOSE_MODE:
              progKwargs = {'dummy' : False}
          else:
              progKwargs = {'dummy' : True}
          with _ProgressBar(*progArgs, **progKwargs) as PBar:
              keyTypesLst = ["citation", "journal", "year", "author"]
              citesDict = {}
              if keyType not in keyTypesLst:
                  raise TypeError("{} is not a valid key type, only '{}' or '{}' are.".format(keyType, "', '".join(keyTypesLst[:-1]), keyTypesLst[-1]))
              for R in self:
                  rCites = R.get('citations')
                  if PBar:
                      count += 1
                      PBar.updateVal(count / recCount, "Analysing: {}".format(R.UT))
                  if rCites:
                      for c in rCites:
                          if keyType == keyTypesLst[0]:
                              cVal = c
                          else:
                              cVal = getattr(c, keyType)
                              if cVal is None:
                                  continue
                          if cVal in citesDict:
                              citesDict[cVal] += 1
                          else:
                              citesDict[cVal] = 1
              if PBar:
                  PBar.finish("Done, {} {} fields analysed".format(len(citesDict), keyType))
          if pandasFriendly:
              citeLst = []
              countLst = []
              for cite, occ in citesDict.items():
                  citeLst.append(cite)
                  countLst.append(occ)
              return {"Citations" : citeLst, "Counts" : countLst}
          else:
              return citesDict