Esempio n. 1
0
def makeReport(inputFileName, outputDir, projectDir):

    print '\n Processing input file ' + inputFileName, 'Time:', time.asctime()

    #try :
    # For each input file create a separate subfolder for all the related files
    [inputId, subFolder] = CheckFolders.MakeSubfolder(inputFileName, outputDir)

    # Move the prefilled Tex files into the subfolder
    BuildTex.MoveFiles(subFolder, projectDir)

    # Parse the input file
    [graphData, statData] = ParseInput.dataFromFile(inputFileName, inputId,
                                                    outputDir, subFolder)

    # Compute the statistics values and build the charts
    StatValues.computeValues(subFolder, statData)

    orgSize = len(statData)
    if orgSize < 8:
        print '\nNo graph data!'
        BuildTex.SimplifyResult(subFolder)
    else:
        try:
            # Create graphs for the reports
            graphObject = BuildGraphs.makeGraphObject(graphData)
            BuildGraphs.BuildAllGraphs(inputId, subFolder, graphObject)
        except Exception as e:
            print e.message

    # Create PDF
    if orgSize > 37:
        BuildTex.insertTables(subFolder, orgSize)
        BuildTex.splitTables(subFolder, orgSize)
    BuildTex.CreatePdf(outputDir, subFolder, inputId, inputFileName)
Esempio n. 2
0
def makeReport(inputFileName, outputDir, projectDir):

    print '\n Processing input file ' + inputFileName, 'Time:', time.asctime()

    #try :
    # For each input file create a separate subfolder for all the related files
    [inputId, subFolder] = CheckFolders.MakeSubfolder(inputFileName, outputDir)

    # Move the prefilled Tex files into the subfolder
    BuildTex.MoveFiles(subFolder, projectDir)  

    # Parse the input file  
    [graphData, statData] = ParseInput.dataFromFile(inputFileName, inputId, outputDir, subFolder)

    # Compute the statistics values and build the charts
    StatValues.computeValues(subFolder, statData)

    orgSize = len(statData)
    if orgSize < 8 :
        print '\nNo graph data!'
        BuildTex.SimplifyResult(subFolder)
    else :
        try :
            # Create graphs for the reports 
            graphObject = BuildGraphs.makeGraphObject(graphData)
            BuildGraphs.BuildAllGraphs(inputId, subFolder, graphObject)
        except Exception as e:
            print e.message

    # Create PDF
    if orgSize > 37 :
        BuildTex.insertTables(subFolder, orgSize)
        BuildTex.splitTables(subFolder, orgSize)
    BuildTex.CreatePdf(outputDir, subFolder, inputId, inputFileName)
Esempio n. 3
0
def makeReport(inputFileName, outputDir):

    print '\n Processing input file ' + inputFileName

    try :
        # For each input file create a separate subfolder for all the related files
        [inputId, subFolder] = CheckFolders.MakeSubfolder(inputFileName, outputDir)

        # Move the prefilled Tex files into the subfolder
        BuildTex.MoveFiles(subFolder)  

        # Parse the input file  
        [graphData, statData] = ParseInput.dataFromFile(inputFileName, inputId, outputDir, subFolder)

        # Compute the values  
        StatValues.computeValues(subFolder, statData)

        # Process the input data to create charts, graphs, Tex and then PDF
        # Create graphs for the reports 
        graphObject = BuildGraphs.makeGraphObject(graphData)
        BuildGraphs.BuildAllGraphs(inputId, subFolder, graphObject)

        # Create charts and histograms for the reports 
        BuildCharts.BuildAllCharts(subFolder, statData)

        # Create PDF
        BuildTex.CreatePdf(outputDir, subFolder, inputId, inputFileName)

    except Exception as e:
        print e.message
        print 'Creating PDF failed for ', inputId

    print '\n', '*'*70, '\n', '-'*70, '\n'
Esempio n. 4
0
def compute21a(subFolder, statData): # aggregate
    print '\nComputing values for slide 2.1.1.'
    values = ParseInput.extractAnswers(statData, [38,39])
    values = StatValues.joinLists(values)

    yesNum = values.count('87') + values.count('88')
    noNum = values.count('89') + values.count('90')
    [yesNumP, noNumP] = StatValues.percent([yesNum,noNum])

    BuildTexts.addMacro(subFolder, 'valBAAyesNumP', str(yesNumP))
    BuildTexts.addMacro(subFolder, 'valBAAnoNumP', str(noNumP))

    BuildCharts.YesNoPieSVG(subFolder, 'pie211.svg', yesNumP, noNumP)
Esempio n. 5
0
def compute22a(subFolder, statData): # aggregate
    print '\nComputing values for slide 2.2.1.'
    values = ParseInput.extractAnswers(statData, [28,29,46,47])
    values = StatValues.joinLists(values)

    yesNum = values.count('83') + values.count('84')
    noNum = values.count('85') + values.count('86')
    [yesNumP, noNumP] = StatValues.percent([yesNum,noNum])

    BuildTexts.addMacro(subFolder, 'valBBAyesNumP', str(yesNumP))
    BuildTexts.addMacro(subFolder, 'valBBAnoNumP', str(noNumP))

    BuildCharts.YesNoPieSVG(subFolder, 'pie221.svg', yesNumP, noNumP)
Esempio n. 6
0
def compute31a(subFolder, statData):  # aggregate
    print '\nComputing values for slide 3.1.1.'
    values = StatValues.extractAnswers(statData, [43])

    yesNum = values.count('103') + values.count('104')
    noNum = values.count('105') + values.count('106')
    [yesNumP, noNumP] = StatValues.percent([yesNum, noNum])

    BuildTex.addMacros(subFolder, 'valCAAyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valCAAnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valCAAyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valCAAnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie311.png', yesNumP, noNumP)
Esempio n. 7
0
def compute23a(subFolder, statData):  # aggregate
    print '\nComputing values for slide 2.3.1.'
    values = StatValues.extractAnswers(statData, [23])

    yesNum = values.count('61')
    noNum = values.count('62')
    [yesNumP, noNumP] = StatValues.percent([yesNum, noNum])

    BuildTex.addMacros(subFolder, 'valBCAyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valBCAnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valBCAyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valBCAnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie231.png', yesNumP, noNumP)
Esempio n. 8
0
def compute23b(subFolder, statData): # aggregate
    print '\nComputing values for slide 2.3.2.'
    values = StatValues.extractAnswers(statData, [52])

    yesNum = values.count('99') + values.count('100')
    noNum = values.count('101') + values.count('102')
    [yesNumP, noNumP] = StatValues.percent([yesNum,noNum])

    BuildTex.addMacros(subFolder, 'valBCByesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valBCBnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valBCByesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valBCBnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie232.png', yesNumP, noNumP)
Esempio n. 9
0
def compute23a(subFolder, statData): # aggregate
    print '\nComputing values for slide 2.3.1.'
    values = StatValues.extractAnswers(statData, [23])

    yesNum = values.count('61')
    noNum = values.count('62')
    [yesNumP, noNumP] = StatValues.percent([yesNum,noNum])

    BuildTex.addMacros(subFolder, 'valBCAyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valBCAnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valBCAyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valBCAnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie231.png', yesNumP, noNumP)
Esempio n. 10
0
def compute31a(subFolder, statData): # aggregate
    print '\nComputing values for slide 3.1.1.'
    values = StatValues.extractAnswers(statData, [43])

    yesNum = values.count('103') + values.count('104')
    noNum = values.count('105') + values.count('106')
    [yesNumP, noNumP] = StatValues.percent([yesNum,noNum])

    BuildTex.addMacros(subFolder, 'valCAAyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valCAAnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valCAAyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valCAAnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie311.png', yesNum, noNum)
Esempio n. 11
0
def compute42c(subFolder, statData): # one question 
    print '\nComputing values for slide 4.2.c.'
    values = StatValues.extractAnswers(statData, [54])

    yesNum = values.count('87') + values.count('88')
    noNum = values.count('89') + values.count('90')
    [yesNumP, noNumP] = StatValues.percent([yesNum,noNum])

    BuildTex.addMacros(subFolder, 'valDBCyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valDBCnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valDBCyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valDBCnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie42_c_.png', yesNumP, noNumP)
Esempio n. 12
0
def compute23b(subFolder, statData):  # aggregate
    print '\nComputing values for slide 2.3.2.'
    values = StatValues.extractAnswers(statData, [52])

    yesNum = values.count('99') + values.count('100')
    noNum = values.count('101') + values.count('102')
    [yesNumP, noNumP] = StatValues.percent([yesNum, noNum])

    BuildTex.addMacros(subFolder, 'valBCByesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valBCBnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valBCByesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valBCBnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie232.png', yesNumP, noNumP)
Esempio n. 13
0
def compute23d(subFolder, statData): # aggregate
    print '\nComputing values for slide 2.3.4.'
    values = StatValues.extractAnswers(statData, [30])

    yesNum = values.count('83') + values.count('84')
    noNum = values.count('85') + values.count('86')
    [yesNumP, noNumP] = StatValues.percent([yesNum,noNum])

    BuildTex.addMacros(subFolder, 'valBCDyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valBCDnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valBCDyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valBCDnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie234.png', yesNumP, noNumP)
Esempio n. 14
0
def compute42c(subFolder, statData):  # one question
    print '\nComputing values for slide 4.2.c.'
    values = StatValues.extractAnswers(statData, [54])

    yesNum = values.count('87') + values.count('88')
    noNum = values.count('89') + values.count('90')
    [yesNumP, noNumP] = StatValues.percent([yesNum, noNum])

    BuildTex.addMacros(subFolder, 'valDBCyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valDBCnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valDBCyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valDBCnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie42_c_.png', yesNumP, noNumP)
Esempio n. 15
0
def compute23d(subFolder, statData):  # aggregate
    print '\nComputing values for slide 2.3.4.'
    values = StatValues.extractAnswers(statData, [30])

    yesNum = values.count('83') + values.count('84')
    noNum = values.count('85') + values.count('86')
    [yesNumP, noNumP] = StatValues.percent([yesNum, noNum])

    BuildTex.addMacros(subFolder, 'valBCDyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valBCDnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valBCDyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valBCDnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie234.png', yesNumP, noNumP)
Esempio n. 16
0
def compute21a(subFolder, statData):  # aggregate
    print '\nComputing values for slide 2.1.1.'
    values = StatValues.extractAnswers(statData, [38, 39])
    values = StatValues.joinLists(values)

    yesNum = values.count('87') + values.count('88')
    noNum = values.count('89') + values.count('90')
    [yesNumP, noNumP] = StatValues.percent([yesNum, noNum])

    BuildTex.addMacros(subFolder, 'valBAAyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valBAAnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valBAAyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valBAAnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie211.png', yesNumP, noNumP)
Esempio n. 17
0
def compute74(subFolder, statData):  # by question
    print "\nComputing values for slide 7.4."
    values = StatValues.extractAnswers(statData, [56, 57])
    values = StatValues.joinListsByQuestion(values)

    yesNum = [val.count("87") + val.count("88") for val in values]
    noNum = [val.count("89") + val.count("90") for val in values]

    BuildTex.addMacros(subFolder, "valGDyesNumA", str(yesNum[0]))
    BuildTex.addMacros(subFolder, "valGDyesNumB", str(yesNum[1]))
    BuildTex.addMacros(subFolder, "valGDnoNumA", str(noNum[0]))
    BuildTex.addMacros(subFolder, "valGDnoNumB", str(noNum[1]))

    BuildCharts.YesNoPie(subFolder + "\\pie74a.png", yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + "\\pie74b.png", yesNum[1], noNum[1])
Esempio n. 18
0
def compute74(subFolder, statData): # by question
    print '\nComputing values for slide 7.4.'
    values = StatValues.extractAnswers(statData, [56,57])
    values = StatValues.joinListsByQuestion(values)

    yesNum = [ val.count('87') + val.count('88') for val in values ]
    noNum = [ val.count('89') + val.count('90') for val in values ]

    BuildTex.addMacros(subFolder, 'valGDyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valGDyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valGDnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valGDnoNumB', str(noNum[1]))

    BuildCharts.YesNoPie(subFolder + '\\pie74a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie74b.png', yesNum[1], noNum[1])
Esempio n. 19
0
def compute32a(subFolder, statData):  # aggregate
    print '\nComputing values for slide 3.2.1.'
    values = StatValues.extractAnswers(statData, [40, 41, 42])
    values = StatValues.joinLists(values)

    yesNum = values.count('99') + values.count('100')
    noNum = values.count('101') + values.count('102')
    [yesNumP, noNumP] = StatValues.percent([yesNum, noNum])

    BuildTex.addMacros(subFolder, 'valCBAyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valCBAnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valCBAyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valCBAnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie321.png', yesNumP, noNumP)
Esempio n. 20
0
def compute71(subFolder, statData):  # aggregate
    print "\nComputing values for slide 7.1."
    values = StatValues.extractAnswers(statData, [56, 57])
    values = StatValues.joinLists(values)

    yesNum = values.count("87") + values.count("88")
    noNum = values.count("89") + values.count("90")
    [yesNumP, noNumP] = StatValues.percent([yesNum, noNum])

    BuildTex.addMacros(subFolder, "valGAyesNum", str(yesNum))
    BuildTex.addMacros(subFolder, "valGAnoNum", str(noNum))
    BuildTex.addMacros(subFolder, "valGAyesNumP", str(yesNumP))
    BuildTex.addMacros(subFolder, "valGAnoNumP", str(noNumP))

    BuildCharts.YesNoPie(subFolder + "\\pie71.png", yesNumP, noNumP)
Esempio n. 21
0
def extractGraphDataBlock(dataline, localId) :

    id = StatValues.extractAnswers([dataline], [5])[0]
    name = StatValues.extractAnswers([dataline], [6])[0]
    position = StatValues.extractAnswers([dataline], [7])[0]
    year = StatValues.extractAnswers([dataline], [14])[0]
    if len(year) == 4 :
        age = 2014 - int(year)
    else :
        age = 0
        print 'Age is unknown for', id, name

    edgeGroups = extractEdgeGroups(dataline)

    return [ id, str(localId), name + position, age, edgeGroups ]
Esempio n. 22
0
def compute22a(subFolder, statData):  # aggregate
    print '\nComputing values for slide 2.2.1.'
    values = StatValues.extractAnswers(statData, [28, 29, 46, 47])
    values = StatValues.joinLists(values)

    yesNum = values.count('83') + values.count('84')
    noNum = values.count('85') + values.count('86')
    [yesNumP, noNumP] = StatValues.percent([yesNum, noNum])

    BuildTex.addMacros(subFolder, 'valBBAyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valBBAnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valBBAyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valBBAnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie221.png', yesNumP, noNumP)
Esempio n. 23
0
def compute32a(subFolder, statData): # aggregate
    print '\nComputing values for slide 3.2.1.'
    values = StatValues.extractAnswers(statData, [40,41,42])
    values = StatValues.joinLists(values)

    yesNum = values.count('99') + values.count('100')
    noNum = values.count('101') + values.count('102')
    [yesNumP, noNumP] = StatValues.percent([yesNum,noNum])

    BuildTex.addMacros(subFolder, 'valCBAyesNum', str(yesNum))
    BuildTex.addMacros(subFolder, 'valCBAnoNum', str(noNum))
    BuildTex.addMacros(subFolder, 'valCBAyesNumP', str(yesNumP))
    BuildTex.addMacros(subFolder, 'valCBAnoNumP', str(noNumP))

    BuildCharts.YesNoPie(subFolder + '\\pie321.png', yesNum, noNum)
Esempio n. 24
0
def computeParticipatedManWomen(subFolder, statData):
    values = StatValues.extractAnswers(statData, [9])
    men = values.count('14')
    women = values.count('15')
    BuildTex.addMacros(subFolder, 'nParticipated', str(men + women))
    BuildTex.addMacros(subFolder, 'numMen', str(men))
    BuildTex.addMacros(subFolder, 'numWomen', str(women))
Esempio n. 25
0
def computeParticipatedManWomen(subFolder, statData) :
    values = StatValues.extractAnswers(statData, [9])
    men = values.count('14')
    women = values.count('15')
    BuildTex.addMacros(subFolder, 'nParticipated', str(men+women))
    BuildTex.addMacros(subFolder, 'numMen', str(men))
    BuildTex.addMacros(subFolder, 'numWomen', str(women))
Esempio n. 26
0
def computeAllBossTeacher(subFolder, statData):
    values = StatValues.extractAnswers(statData, [8])
    boss = values.count('201') + values.count('202')
    teacher = values.count('203')

    BuildTex.addMacros(subFolder, 'nTotal', str(len(statData)))
    BuildTex.addMacros(subFolder, 'numBoss', str(boss))
    BuildTex.addMacros(subFolder, 'numTeacher', str(teacher))
Esempio n. 27
0
def computeAllBossTeacher(subFolder, statData) :
    values = StatValues.extractAnswers(statData, [8])
    boss = values.count('201') + values.count('202')
    teacher = values.count('203')

    BuildTex.addMacros(subFolder, 'nTotal', str(len(statData)))
    BuildTex.addMacros(subFolder, 'numBoss', str(boss))
    BuildTex.addMacros(subFolder, 'numTeacher', str(teacher))
Esempio n. 28
0
def compute23c(subFolder, statData): # aggregate (1 question)
    print '\nComputing values for slide 2.3.3.'
    values = StatValues.extractAnswers(statData, [53])

    ansA = values.count('120') 
    ansB = values.count('121')
    ansC = values.count('122') 
    [ansAp, ansBp, ansCp] = StatValues.percent([ansA, ansB, ansC])

    BuildTex.addMacros(subFolder, 'valBCCansA', str(ansA))
    BuildTex.addMacros(subFolder, 'valBCCansB', str(ansB))
    BuildTex.addMacros(subFolder, 'valBCCansC', str(ansC))
    BuildTex.addMacros(subFolder, 'valBCCansAp', str(ansAp))
    BuildTex.addMacros(subFolder, 'valBCCansBp', str(ansBp))
    BuildTex.addMacros(subFolder, 'valBCCansCp', str(ansCp))
    
    BuildCharts.Pie(subFolder + '\\pie233.png', [ansAp, ansBp, ansCp])
Esempio n. 29
0
def compute23c(subFolder, statData):  # aggregate (1 question)
    print '\nComputing values for slide 2.3.3.'
    values = StatValues.extractAnswers(statData, [53])

    ansA = values.count('120')
    ansB = values.count('121')
    ansC = values.count('122')
    [ansAp, ansBp, ansCp] = StatValues.percent([ansA, ansB, ansC])

    BuildTex.addMacros(subFolder, 'valBCCansA', str(ansA))
    BuildTex.addMacros(subFolder, 'valBCCansB', str(ansB))
    BuildTex.addMacros(subFolder, 'valBCCansC', str(ansC))
    BuildTex.addMacros(subFolder, 'valBCCansAp', str(ansAp))
    BuildTex.addMacros(subFolder, 'valBCCansBp', str(ansBp))
    BuildTex.addMacros(subFolder, 'valBCCansCp', str(ansCp))

    BuildCharts.Pie(subFolder + '\\pie233.png', [ansAp, ansBp, ansCp])
Esempio n. 30
0
def compute32d(subFolder, statData): # by question
    print '\nComputing values for slide 3.2.4.'
    values = StatValues.extractAnswers(statData, [40,41,42])
    values = StatValues.joinListsByQuestion(values)

    yesNum = [ val.count('99') + val.count('100') for val in values ]
    noNum = [ val.count('101') + val.count('102') for val in values ]

    BuildTex.addMacros(subFolder, 'valCBDyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valCBDyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valCBDyesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valCBDnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valCBDnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valCBDnoNumC', str(noNum[2]))

    BuildCharts.YesNoPie(subFolder + '\\pie324a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie324b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie324c.png', yesNum[2], noNum[2])
Esempio n. 31
0
def compute32d(subFolder, statData):  # by question
    print '\nComputing values for slide 3.2.4.'
    values = StatValues.extractAnswers(statData, [40, 41, 42])
    values = StatValues.joinListsByQuestion(values)

    yesNum = [val.count('99') + val.count('100') for val in values]
    noNum = [val.count('101') + val.count('102') for val in values]

    BuildTex.addMacros(subFolder, 'valCBDyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valCBDyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valCBDyesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valCBDnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valCBDnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valCBDnoNumC', str(noNum[2]))

    BuildCharts.YesNoPie(subFolder + '\\pie324a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie324b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie324c.png', yesNum[2], noNum[2])
Esempio n. 32
0
def computeTeachCat(subFolder, statData):
    values = StatValues.extractAnswers(statData, [19])
    keys = [str(i + 55) for i in range(5)]
    stat = [values.count(key) for key in keys]
    print '\nTeacher categories:', values, stat
    BuildTex.addMacros(subFolder, 'numTechCatA', str(stat[0]))
    BuildTex.addMacros(subFolder, 'numTechCatB', str(stat[1]))
    BuildTex.addMacros(subFolder, 'numTechCatC', str(stat[2]))
    BuildTex.addMacros(subFolder, 'numTechCatD', str(stat[3]))
    BuildTex.addMacros(subFolder, 'numTechCatE', str(stat[4]))
Esempio n. 33
0
def computeTeachCat(subFolder, statData) :
    values = StatValues.extractAnswers(statData, [19])
    keys = [str(i+55) for i in range(5)]
    stat = [values.count(key) for key in keys]
    print '\nTeacher categories:', values, stat
    BuildTex.addMacros(subFolder, 'numTechCatA', str(stat[0]))
    BuildTex.addMacros(subFolder, 'numTechCatB', str(stat[1]))
    BuildTex.addMacros(subFolder, 'numTechCatC', str(stat[2]))
    BuildTex.addMacros(subFolder, 'numTechCatD', str(stat[3]))
    BuildTex.addMacros(subFolder, 'numTechCatE', str(stat[4]))
Esempio n. 34
0
def compute42a(subFolder, statData):  # one question
    print '\nComputing values for slide 4.2.a'
    values = StatValues.extractAnswers(statData, [37])
    ansA = values.count('95')
    ansB = values.count('96')
    ansC = values.count('97')
    ansD = values.count('98')
    [ansAp, ansBp, ansCp, ansDp] = StatValues.percent([ansA, ansB, ansC, ansD])

    BuildTex.addMacros(subFolder, 'valDBAansA', str(ansA))
    BuildTex.addMacros(subFolder, 'valDBAansB', str(ansB))
    BuildTex.addMacros(subFolder, 'valDBAansC', str(ansC))
    BuildTex.addMacros(subFolder, 'valDBAansD', str(ansD))
    BuildTex.addMacros(subFolder, 'valDBAansAp', str(ansAp))
    BuildTex.addMacros(subFolder, 'valDBAansBp', str(ansBp))
    BuildTex.addMacros(subFolder, 'valDBAansCp', str(ansCp))
    BuildTex.addMacros(subFolder, 'valDBAansDp', str(ansDp))

    BuildCharts.Pie(subFolder + '\\pie42_a_.png', [ansAp, ansBp, ansCp, ansDp])
Esempio n. 35
0
def compute42a(subFolder, statData): # one question 
    print '\nComputing values for slide 4.2.a'
    values = StatValues.extractAnswers(statData, [37])
    ansA = values.count('95') 
    ansB = values.count('96')
    ansC = values.count('97') 
    ansD = values.count('98')
    [ansAp, ansBp, ansCp, ansDp] = StatValues.percent([ansA, ansB, ansC, ansD])

    BuildTex.addMacros(subFolder, 'valDBAansA', str(ansA))
    BuildTex.addMacros(subFolder, 'valDBAansB', str(ansB))
    BuildTex.addMacros(subFolder, 'valDBAansC', str(ansC))
    BuildTex.addMacros(subFolder, 'valDBAansD', str(ansD))
    BuildTex.addMacros(subFolder, 'valDBAansAp', str(ansAp))
    BuildTex.addMacros(subFolder, 'valDBAansBp', str(ansBp))
    BuildTex.addMacros(subFolder, 'valDBAansCp', str(ansCp))
    BuildTex.addMacros(subFolder, 'valDBAansDp', str(ansDp))
    
    BuildCharts.Pie(subFolder + '\\pie42_a_.png', [ansAp, ansBp, ansCp, ansDp])
Esempio n. 36
0
def compute22e(subFolder, statData):  # aggregate (1 question)
    print '\nComputing values for slide 2.2.5.'
    values = StatValues.extractAnswers(statData, [49])

    ansA = values.count('115')
    ansB = values.count('116')
    ansC = values.count('117')
    ansD = values.count('118')
    [ansAp, ansBp, ansCp, ansDp] = StatValues.percent([ansA, ansB, ansC, ansD])

    BuildTex.addMacros(subFolder, 'valBBEansA', str(ansA))
    BuildTex.addMacros(subFolder, 'valBBEansB', str(ansB))
    BuildTex.addMacros(subFolder, 'valBBEansC', str(ansC))
    BuildTex.addMacros(subFolder, 'valBBEansD', str(ansD))
    BuildTex.addMacros(subFolder, 'valBBEansAp', str(ansAp))
    BuildTex.addMacros(subFolder, 'valBBEansBp', str(ansBp))
    BuildTex.addMacros(subFolder, 'valBBEansCp', str(ansCp))
    BuildTex.addMacros(subFolder, 'valBBEansDp', str(ansDp))

    BuildCharts.Pie(subFolder + '\\pie225.png', [ansAp, ansBp, ansCp, ansDp])
Esempio n. 37
0
def compute22e(subFolder, statData): # aggregate (1 question)
    print '\nComputing values for slide 2.2.5.'
    values = StatValues.extractAnswers(statData, [49])

    ansA = values.count('115') 
    ansB = values.count('116')
    ansC = values.count('117') 
    ansD = values.count('118')
    [ansAp, ansBp, ansCp, ansDp] = StatValues.percent([ansA, ansB, ansC, ansD])

    BuildTex.addMacros(subFolder, 'valBBEansA', str(ansA))
    BuildTex.addMacros(subFolder, 'valBBEansB', str(ansB))
    BuildTex.addMacros(subFolder, 'valBBEansC', str(ansC))
    BuildTex.addMacros(subFolder, 'valBBEansD', str(ansD))
    BuildTex.addMacros(subFolder, 'valBBEansAp', str(ansAp))
    BuildTex.addMacros(subFolder, 'valBBEansBp', str(ansBp))
    BuildTex.addMacros(subFolder, 'valBBEansCp', str(ansCp))
    BuildTex.addMacros(subFolder, 'valBBEansDp', str(ansDp))
    
    BuildCharts.Pie(subFolder + '\\pie225.png', [ansA, ansB, ansC, ansD])
Esempio n. 38
0
def compute22d(subFolder, statData):  # by question
    print '\nComputing values for slide 2.2.4.'
    values = StatValues.extractAnswers(statData, [28, 29, 46, 47])
    values = StatValues.joinListsByQuestion(values)

    yesNum = [val.count('83') + val.count('84') for val in values]
    noNum = [val.count('85') + val.count('86') for val in values]

    BuildTex.addMacros(subFolder, 'valBBDyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valBBDyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valBBDyesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valBBDyesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valBBDnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valBBDnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valBBDnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valBBDnoNumD', str(noNum[3]))

    BuildCharts.YesNoPie(subFolder + '\\pie224a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie224b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie224c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie224d.png', yesNum[3], noNum[3])
Esempio n. 39
0
def compute72(subFolder, statData): # by age - q14
    print '\nComputing values for slide 7.2.'
    values = StatValues.extractAnswers(statData, [14, 56,57])
    values = StatValues.joinListsByAge(values)

    yesNum = [ val.count('87') + val.count('88') for val in values ]
    noNum = [ val.count('89') + val.count('90') for val in values ]

    BuildTex.addMacros(subFolder, 'valGByesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valGByesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valGByesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valGByesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valGBnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valGBnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valGBnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valGBnoNumD', str(noNum[3]))

    BuildCharts.YesNoPie(subFolder + '\\pie72a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie72b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie72c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie72d.png', yesNum[3], noNum[3])
Esempio n. 40
0
def compute22d(subFolder, statData): # by question
    print '\nComputing values for slide 2.2.4.'
    values = StatValues.extractAnswers(statData, [28,29,46,47])
    values = StatValues.joinListsByQuestion(values)

    yesNum = [ val.count('83') + val.count('84') for val in values ]
    noNum = [ val.count('85') + val.count('86') for val in values ]

    BuildTex.addMacros(subFolder, 'valBBDyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valBBDyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valBBDyesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valBBDyesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valBBDnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valBBDnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valBBDnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valBBDnoNumD', str(noNum[3]))

    BuildCharts.YesNoPie(subFolder + '\\pie224a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie224b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie224c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie224d.png', yesNum[3], noNum[3])
Esempio n. 41
0
def compute72(subFolder, statData):  # by age - q14
    print "\nComputing values for slide 7.2."
    values = StatValues.extractAnswers(statData, [14, 56, 57])
    values = StatValues.joinListsByAge(values)

    yesNum = [val.count("87") + val.count("88") for val in values]
    noNum = [val.count("89") + val.count("90") for val in values]

    BuildTex.addMacros(subFolder, "valGByesNumA", str(yesNum[0]))
    BuildTex.addMacros(subFolder, "valGByesNumB", str(yesNum[1]))
    BuildTex.addMacros(subFolder, "valGByesNumC", str(yesNum[2]))
    BuildTex.addMacros(subFolder, "valGByesNumD", str(yesNum[3]))
    BuildTex.addMacros(subFolder, "valGBnoNumA", str(noNum[0]))
    BuildTex.addMacros(subFolder, "valGBnoNumB", str(noNum[1]))
    BuildTex.addMacros(subFolder, "valGBnoNumC", str(noNum[2]))
    BuildTex.addMacros(subFolder, "valGBnoNumD", str(noNum[3]))

    BuildCharts.YesNoPie(subFolder + "\\pie72a.png", yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + "\\pie72b.png", yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + "\\pie72c.png", yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + "\\pie72d.png", yesNum[3], noNum[3])
Esempio n. 42
0
def compute31b(subFolder, statData):  # by age - q14
    print '\nComputing values for slide 3.1.2.'
    values = StatValues.extractAnswers(statData, [14, 43])
    values = StatValues.joinListsByAge(values)

    yesNum = [val.count('103') + val.count('104') for val in values]
    noNum = [val.count('105') + val.count('106') for val in values]

    BuildTex.addMacros(subFolder, 'valCAByesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valCAByesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valCAByesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valCAByesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valCABnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valCABnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valCABnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valCABnoNumD', str(noNum[3]))

    BuildCharts.YesNoPie(subFolder + '\\pie312a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie312b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie312c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie312d.png', yesNum[3], noNum[3])
Esempio n. 43
0
def compute31b(subFolder, statData): # by age - q14
    print '\nComputing values for slide 3.1.2.'
    values = StatValues.extractAnswers(statData, [14, 43])
    values = StatValues.joinListsByAge(values)

    yesNum = [ val.count('103') + val.count('104') for val in values ]
    noNum = [ val.count('105') + val.count('106') for val in values ]

    BuildTex.addMacros(subFolder, 'valCAByesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valCAByesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valCAByesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valCAByesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valCABnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valCABnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valCABnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valCABnoNumD', str(noNum[3]))

    BuildCharts.YesNoPie(subFolder + '\\pie312a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie312b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie312c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie312d.png', yesNum[3], noNum[3])
Esempio n. 44
0
def compute42b(subFolder, statData): # one question 
    print '\nComputing values for slide 4.2.b.'
    values = StatValues.extractAnswers(statData, [45])
    ansA = values.count('107') 
    ansB = values.count('108')
    ansC = values.count('109') 
    ansD = values.count('110')
    ansE = values.count('111')
    [ansAp, ansBp, ansCp, ansDp, ansEp] = StatValues.percent([ansA, ansB, ansC, ansD, ansE])

    BuildTex.addMacros(subFolder, 'valDBBansA', str(ansA))
    BuildTex.addMacros(subFolder, 'valDBBansB', str(ansB))
    BuildTex.addMacros(subFolder, 'valDBBansC', str(ansC))
    BuildTex.addMacros(subFolder, 'valDBBansD', str(ansD))
    BuildTex.addMacros(subFolder, 'valDBBansE', str(ansE))
    BuildTex.addMacros(subFolder, 'valDBBansAp', str(ansAp))
    BuildTex.addMacros(subFolder, 'valDBBansBp', str(ansBp))
    BuildTex.addMacros(subFolder, 'valDBBansCp', str(ansCp))
    BuildTex.addMacros(subFolder, 'valDBBansDp', str(ansDp))
    BuildTex.addMacros(subFolder, 'valDBBansEp', str(ansEp))
    
    BuildCharts.Pie(subFolder + '\\pie42_b_.png', [ansAp, ansBp, ansCp, ansDp, ansEp])
Esempio n. 45
0
def compute22c(subFolder, statData):  # by category - q19
    print '\nComputing values for slide 2.2.3.'
    values = StatValues.extractAnswers(statData, [19, 28, 29, 46, 47])
    values = StatValues.joinListsByCategory(values)

    yesNum = [val.count('83') + val.count('84') for val in values]
    noNum = [val.count('85') + val.count('86') for val in values]

    BuildTex.addMacros(subFolder, 'valBBCyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valBBCyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valBBCyesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valBBCyesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valBBCyesNumE', str(yesNum[4]))
    BuildTex.addMacros(subFolder, 'valBBCnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valBBCnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valBBCnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valBBCnoNumD', str(noNum[3]))
    BuildTex.addMacros(subFolder, 'valBBCnoNumE', str(noNum[4]))

    BuildCharts.YesNoPie(subFolder + '\\pie223a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie223b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie223c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie223d.png', yesNum[3], noNum[3])
    BuildCharts.YesNoPie(subFolder + '\\pie223e.png', yesNum[4], noNum[4])
Esempio n. 46
0
def compute21b(subFolder, statData): # by age - q14
    print '\nComputing values for slide 2.1.2.'
    values = ParseInput.extractAnswers(statData, [14, 38,39])
    values = StatValues.joinListsByAge(values)

    yesNum = [ val.count('87') + val.count('88') for val in values ]
    noNum = [ val.count('89') + val.count('90') for val in values ]

    BuildTexts.addMacrosList(subFolder, 'valBAByesNum', yesNum)
    BuildTexts.addMacrosList(subFolder, 'valBABnoNum', noNum)

    BuildCharts.YesNoPieSVG(subFolder, 'pie212a.svg', yesNum[0], noNum[0])
    BuildCharts.YesNoPieSVG(subFolder, 'pie212b.svg', yesNum[1], noNum[1])
    BuildCharts.YesNoPieSVG(subFolder, 'pie212c.svg', yesNum[2], noNum[2])
    BuildCharts.YesNoPieSVG(subFolder, 'pie212d.svg', yesNum[3], noNum[3])
Esempio n. 47
0
def compute22b(subFolder, statData): # by age
    print '\nComputing values for slide 2.2.2.'
    values = ParseInput.extractAnswers(statData, [14, 28,29,46,47])
    values = StatValues.joinListsByAge(values)

    yesNum = [ val.count('83') + val.count('84') for val in values ]
    noNum = [ val.count('85') + val.count('86') for val in values ]

    BuildTexts.addMacrosList(subFolder, 'valBBByesNum', yesNum)
    BuildTexts.addMacrosList(subFolder, 'valBBBnoNum', noNum)

    BuildCharts.YesNoPieSVG(subFolder, 'pie222a.svg', yesNum[0], noNum[0])
    BuildCharts.YesNoPieSVG(subFolder, 'pie222b.svg', yesNum[1], noNum[1])
    BuildCharts.YesNoPieSVG(subFolder, 'pie222c.svg', yesNum[2], noNum[2])
    BuildCharts.YesNoPieSVG(subFolder, 'pie222d.svg', yesNum[3], noNum[3])
Esempio n. 48
0
def compute21d(subFolder, statData): # by question
    print '\nComputing values for slide 2.1.4.'
    values = StatValues.extractAnswers(statData, [35,38,39,50,55])
    values = StatValues.joinListsByQuestion(values)

    yesNum = [ val.count('87') + val.count('88') for val in values ]
    noNum = [ val.count('89') + val.count('90') for val in values ]

    BuildTex.addMacros(subFolder, 'valBADyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valBADyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valBADyesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valBADyesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valBADyesNumE', str(yesNum[4]))
    BuildTex.addMacros(subFolder, 'valBADnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valBADnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valBADnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valBADnoNumD', str(noNum[3]))
    BuildTex.addMacros(subFolder, 'valBADnoNumE', str(noNum[4]))

    BuildCharts.YesNoPie(subFolder + '\\pie214a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie214b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie214c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie214d.png', yesNum[3], noNum[3])
    BuildCharts.YesNoPie(subFolder + '\\pie214e.png', yesNum[4], noNum[4])
Esempio n. 49
0
def compute21c(subFolder, statData): # by category - q19
    print '\nComputing values for slide 2.1.3.'
    values = StatValues.extractAnswers(statData, [19, 38,39])
    values = StatValues.joinListsByCategory(values)

    yesNum = [ val.count('87') + val.count('88') for val in values ]
    noNum = [ val.count('89') + val.count('90') for val in values ]

    BuildTex.addMacros(subFolder, 'valBACyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valBACyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valBACyesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valBACyesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valBACyesNumE', str(yesNum[4]))
    BuildTex.addMacros(subFolder, 'valBACnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valBACnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valBACnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valBACnoNumD', str(noNum[3]))
    BuildTex.addMacros(subFolder, 'valBACnoNumE', str(noNum[4]))

    BuildCharts.YesNoPie(subFolder + '\\pie213a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie213b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie213c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie213d.png', yesNum[3], noNum[3])
    BuildCharts.YesNoPie(subFolder + '\\pie213e.png', yesNum[4], noNum[4])
Esempio n. 50
0
def compute22c(subFolder, statData): # by category - q19
    print '\nComputing values for slide 2.2.3.'
    values = StatValues.extractAnswers(statData, [19, 28,29,46,47])
    values = StatValues.joinListsByCategory(values)

    yesNum = [ val.count('83') + val.count('84') for val in values ]
    noNum = [ val.count('85') + val.count('86') for val in values ]

    BuildTex.addMacros(subFolder, 'valBBCyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valBBCyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valBBCyesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valBBCyesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valBBCyesNumE', str(yesNum[4]))
    BuildTex.addMacros(subFolder, 'valBBCnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valBBCnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valBBCnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valBBCnoNumD', str(noNum[3]))
    BuildTex.addMacros(subFolder, 'valBBCnoNumE', str(noNum[4]))

    BuildCharts.YesNoPie(subFolder + '\\pie223a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie223b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie223c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie223d.png', yesNum[3], noNum[3])
    BuildCharts.YesNoPie(subFolder + '\\pie223e.png', yesNum[4], noNum[4])
Esempio n. 51
0
def compute22d(subFolder, statData): # by question
    print '\nComputing values for slide 2.2.4.'
    values = ParseInput.extractAnswers(statData, [28,29,46,47])
    values = StatValues.joinListsByQuestion(values)

    yesNum = [ val.count('83') + val.count('84') for val in values ]
    noNum = [ val.count('85') + val.count('86') for val in values ]

    BuildTexts.addMacrosList(subFolder, 'valBBDyesNum', yesNum)
    BuildTexts.addMacrosList(subFolder, 'valBBDnoNum', noNum)

    BuildCharts.YesNoPieSVG(subFolder, 'pie224a.svg', yesNum[0], noNum[0])
    BuildCharts.YesNoPieSVG(subFolder, 'pie224b.svg', yesNum[1], noNum[1])
    BuildCharts.YesNoPieSVG(subFolder, 'pie224c.svg', yesNum[2], noNum[2])
    BuildCharts.YesNoPieSVG(subFolder, 'pie224d.svg', yesNum[3], noNum[3])
Esempio n. 52
0
def compute42b(subFolder, statData):  # one question
    print '\nComputing values for slide 4.2.b.'
    values = StatValues.extractAnswers(statData, [45])
    ansA = values.count('107')
    ansB = values.count('108')
    ansC = values.count('109')
    ansD = values.count('110')
    ansE = values.count('111')
    [ansAp, ansBp, ansCp, ansDp,
     ansEp] = StatValues.percent([ansA, ansB, ansC, ansD, ansE])

    BuildTex.addMacros(subFolder, 'valDBBansA', str(ansA))
    BuildTex.addMacros(subFolder, 'valDBBansB', str(ansB))
    BuildTex.addMacros(subFolder, 'valDBBansC', str(ansC))
    BuildTex.addMacros(subFolder, 'valDBBansD', str(ansD))
    BuildTex.addMacros(subFolder, 'valDBBansE', str(ansE))
    BuildTex.addMacros(subFolder, 'valDBBansAp', str(ansAp))
    BuildTex.addMacros(subFolder, 'valDBBansBp', str(ansBp))
    BuildTex.addMacros(subFolder, 'valDBBansCp', str(ansCp))
    BuildTex.addMacros(subFolder, 'valDBBansDp', str(ansDp))
    BuildTex.addMacros(subFolder, 'valDBBansEp', str(ansEp))

    BuildCharts.Pie(subFolder + '\\pie42_b_.png',
                    [ansAp, ansBp, ansCp, ansDp, ansEp])
Esempio n. 53
0
def compute21d(subFolder, statData):  # by question
    print '\nComputing values for slide 2.1.4.'
    values = StatValues.extractAnswers(statData, [35, 38, 39, 50, 55])
    values = StatValues.joinListsByQuestion(values)

    yesNum = [val.count('87') + val.count('88') for val in values]
    noNum = [val.count('89') + val.count('90') for val in values]

    BuildTex.addMacros(subFolder, 'valBADyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valBADyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valBADyesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valBADyesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valBADyesNumE', str(yesNum[4]))
    BuildTex.addMacros(subFolder, 'valBADnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valBADnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valBADnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valBADnoNumD', str(noNum[3]))
    BuildTex.addMacros(subFolder, 'valBADnoNumE', str(noNum[4]))

    BuildCharts.YesNoPie(subFolder + '\\pie214a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie214b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie214c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie214d.png', yesNum[3], noNum[3])
    BuildCharts.YesNoPie(subFolder + '\\pie214e.png', yesNum[4], noNum[4])
Esempio n. 54
0
def compute21c(subFolder, statData):  # by category - q19
    print '\nComputing values for slide 2.1.3.'
    values = StatValues.extractAnswers(statData, [19, 38, 39])
    values = StatValues.joinListsByCategory(values)

    yesNum = [val.count('87') + val.count('88') for val in values]
    noNum = [val.count('89') + val.count('90') for val in values]

    BuildTex.addMacros(subFolder, 'valBACyesNumA', str(yesNum[0]))
    BuildTex.addMacros(subFolder, 'valBACyesNumB', str(yesNum[1]))
    BuildTex.addMacros(subFolder, 'valBACyesNumC', str(yesNum[2]))
    BuildTex.addMacros(subFolder, 'valBACyesNumD', str(yesNum[3]))
    BuildTex.addMacros(subFolder, 'valBACyesNumE', str(yesNum[4]))
    BuildTex.addMacros(subFolder, 'valBACnoNumA', str(noNum[0]))
    BuildTex.addMacros(subFolder, 'valBACnoNumB', str(noNum[1]))
    BuildTex.addMacros(subFolder, 'valBACnoNumC', str(noNum[2]))
    BuildTex.addMacros(subFolder, 'valBACnoNumD', str(noNum[3]))
    BuildTex.addMacros(subFolder, 'valBACnoNumE', str(noNum[4]))

    BuildCharts.YesNoPie(subFolder + '\\pie213a.png', yesNum[0], noNum[0])
    BuildCharts.YesNoPie(subFolder + '\\pie213b.png', yesNum[1], noNum[1])
    BuildCharts.YesNoPie(subFolder + '\\pie213c.png', yesNum[2], noNum[2])
    BuildCharts.YesNoPie(subFolder + '\\pie213d.png', yesNum[3], noNum[3])
    BuildCharts.YesNoPie(subFolder + '\\pie213e.png', yesNum[4], noNum[4])
Esempio n. 55
0
def computeWorkYears(subFolder, statData):
    values = StatValues.extractAnswers(statData, [16])
    years = map(StatValues.toNumber, values)
    print '\nExperience:', values, years
    [expA, expB, expC, expD] = [0, 0, 0, 0]
    for y in years:
        if y < 0:
            expA = expA
        elif y < 5:
            expA += 1
        elif y < 11:
            expB += 1
        elif y < 21:
            expC += 1
        elif y >= 21 and y < 100:
            expD += 1
    BuildTex.addMacros(subFolder, 'numExpA', str(expA))
    BuildTex.addMacros(subFolder, 'numExpB', str(expB))
    BuildTex.addMacros(subFolder, 'numExpC', str(expC))
    BuildTex.addMacros(subFolder, 'numExpD', str(expD))
Esempio n. 56
0
def computeEducation(subFolder, statData):
    values = StatValues.extractAnswers(statData, [15])
    eduValues = []
    for v in values:
        v = v.replace('{', '').replace('}', '')
        eduList = v.split('=')
        for e in eduList:
            if len(e) > 1:
                eduValues.append(e)

    keys = [str(i + 16) for i in range(7)]
    eduStat = [eduValues.count(key) for key in keys]
    print 'Education values:', eduValues, eduStat
    BuildTex.addMacros(subFolder, 'numEduA', str(eduStat[0]))
    BuildTex.addMacros(subFolder, 'numEduB', str(eduStat[1]))
    BuildTex.addMacros(subFolder, 'numEduC', str(eduStat[2]))
    BuildTex.addMacros(subFolder, 'numEduD', str(eduStat[3]))
    BuildTex.addMacros(subFolder, 'numEduE', str(eduStat[4]))
    BuildTex.addMacros(subFolder, 'numEduF', str(eduStat[5]))
    BuildTex.addMacros(subFolder, 'numEduG', str(eduStat[6]))
Esempio n. 57
0
def computeAge(subFolder, statData):
    values = StatValues.extractAnswers(statData, [14])
    years = map(StatValues.toNumber, values)
    print '\nYears:', years
    ages = [(2014 - y) for y in years]
    print 'Ages:', ages
    [young, mid, senior, old] = [0, 0, 0, 0]
    for age in ages:
        if age < 25 and age > 12:
            young += 1
        elif age < 36:
            mid += 1
        elif age < 56:
            senior += 1
        elif age >= 56 and age < 120:
            old += 1
    BuildTex.addMacros(subFolder, 'numYoung', str(young))
    BuildTex.addMacros(subFolder, 'numMidAge', str(mid))
    BuildTex.addMacros(subFolder, 'numSenior', str(senior))
    BuildTex.addMacros(subFolder, 'numOld', str(old))
Esempio n. 58
0
def main():
    buildlist = []
    #loopthrough the files
    for k in range(1):
        seedJSON = StatValues.requestSeedData(1)
        for i in range(len(seedJSON["matches"])):
            match = seedJSON["matches"][i]
            matchframes = match["timeline"]["frames"]

            #loop through each participant
            for j in range(1, 10):
                team = 0
                if j < 6:
                    team == 1
                else:
                    team == 2
                #sums of individual stats
                singleGamelistAD = statSum(matchframes,
                                           "FlatPhysicalDamageMod", team)
                singleGamelistHP = statSum(matchframes, "FlatHPPoolMod", team)
                singleGamelistAP = statSum(matchframes, "FlatMagicDamageMod",
                                           team)
                singleGamelistARM = statSum(matchframes, "FlatArmorMod", team)
                singleGamelistCRIT = statSum(matchframes, "FlatCritChanceMod",
                                             team)
                singleGamelistMR = statSum(matchframes, "FlatSpellBlockMod",
                                           team)
                singleGamelistAS = statSum(matchframes,
                                           "PercentAttackSpeedMod", team)
                #loop through the timeline sums
                for t in range(len(singleGamelistAD)):

                    #aggregates stats into "effective stats"
                    champid = match["participants"][j]["championId"]
                    AD = singleGamelistAD[
                        t] + singleGamelistAD[t] * singleGamelistAS[
                            t] + singleGamelistAD[t] * singleGamelistCRIT[t]
                    AP = singleGamelistAP[t]
                    ARM = singleGamelistARM[t] + singleGamelistHP[t]
                    MR = singleGamelistMR[t] + singleGamelistHP[t]

                    #creates the hash for that "situation"
                    hashsit = hash(AD, AP, ARM, MR, champid)

                    #build object, which has build and situation in it as well as winrate
                    build = SituationalBuild.SituationalBuild(
                        hashsit, finalbuildorder(match, j))
                    buildlist.append(build)
                    if match["participants"][j]["stats"]["winner"] == True:
                        build.addWin()
                    else:
                        build.addloss()

    #list now is sorted by situation and by winrate
    '''
    for i in range (len(buildlist)):
        print(buildlist[i].getbuildseq() + " " + str(buildlist[i].getwinrate()) + " " + str(buildlist[i].getsituation()))
    '''
    #processes the builds
    situationbuild = situationalbuildlist(buildlist)
    for k in range(len(situationbuild)):
        sorted(situationbuild[k], key=getKey)

    condensebuilds(situationbuild)

    #database stuff
    conn = sqlite3.connect('main.db')

    conn.execute('''CREATE TABLE DATA2
        (Hash            INT
       r0              TEXT,
       r1              TEXT,
       r2              TEXT,
       r3              TEXT,
       r4              TEXT,
       r5              TEXT,
       r6              TEXT,
       r7              TEXT,
       r8              TEXT,
       r9              TEXT,
       r10             TEXT,
       r11             TEXT,
       r12             TEXT,
       r13             TEXT,
       r14             TEXT,
       r15             TEXT,
       r16             TEXT,
       r17             TEXT,
       r18             TEXT,
       r19             TEXT,
       r20             TEXT,
       r21             TEXT,
       r22             TEXT,
       r23             TEXT,
       r24             TEXT,
       r25             TEXT,
       r26             TEXT,
       r27             TEXT,
       r28             TEXT,
       r29             TEXT,
       r30             TEXT,
       r31             TEXT,
       r32             TEXT,
       r33             TEXT,
       r34             TEXT,
       r35             TEXT,
       r36             TEXT,
       r37             TEXT,
       r38             TEXT,
       r39             TEXT,
       r40             TEXT,
       r41             TEXT,
       r42             TEXT,
       r43             TEXT,
       r44             TEXT,
       r45             TEXT,
       r46             TEXT,
       r47             TEXT,
       r48             TEXT,
       r49             TEXT,
       r50             TEXT);''')

    #basically writes something like a 2d table, one dimension the hash and the other builds sorted by winrate
    for i in range(len(situationbuild)):
        for j in range(len(situationbuild[i])):
            if j > 50:
                break
            if j < 1:
                continue
            conn.execute("INSERT INTO DATA2 (Hash, " + "r" + str(j) + ") \
              VALUES (" +
                         str(int(situationbuild[i][j].getsituation() / 5000)) +
                         ", " + str(situationbuild[i][j].getbuildseq()) + " )")
    conn.commit()
    conn.close()