def getDaysRepaet(self,ordersRaw,weekPivot): myDict = BaseFunction().getDict(ordersRaw,weekPivot,4) allKey = BaseFunction().sortKey(myDict) fourDaysRepaet = [0] * len(allKey) eightDaysRepaet = [0] * len(allKey) #first loop scan different key for i in range(2,len(allKey)): #create 14 days recode id and get more than 1 number temp14 = BaseFunction().getColumn(myDict[allKey[i-1]],1) temp14 = temp14 + BaseFunction().getColumn(myDict[allKey[i-2]],1) for j in range(0,len(set(temp14))): if temp14.count(list(set(temp14))[j]) > 1: fourDaysRepaet[i] += 1 #create 28 days recode id if i > 3: temp28 = BaseFunction().getColumn(myDict[allKey[i-1]],1) temp28 = temp28 + BaseFunction().getColumn(myDict[allKey[i-2]],1) temp28 = temp28 + BaseFunction().getColumn(myDict[allKey[i-3]],1) temp28 = temp28 + BaseFunction().getColumn(myDict[allKey[i-4]],1) for j in range(0,len(set(temp28))): if temp28.count(list(set(temp28))[j]) > 1: eightDaysRepaet[i] += 1 fourDaysRepaet[i] = fourDaysRepaet[i]*100/len(set(temp14)) if i > 3: eightDaysRepaet[i] = eightDaysRepaet[i]*100/len(set(temp28)) return(fourDaysRepaet,eightDaysRepaet)