Ejemplo n.º 1
0
def inspect_continuous_var(varName, conn):
    try:
        #Min, Max, Mean
        sql = '''
        select min(?var?*1.) min_?var?, 
        round(avg(?var?*1.),0) mean_?var?, 
        max(?var?*1.) max_?var?
        from  bank
        '''.replace('?var?', varName)
        print('Statistics for: ' + varName)
        Eu.run(sql, conn)

        #Min, Max, Mean by class type
        sql = '''
        select y,count(*) n_people, 
        min(?var?*1.) min_?var?, 
        round(avg(?var?*1.),0) mean_?var?, 
        max(?var?*1.) max_?var?
        from  bank
        group by y
        '''.replace('?var?', varName)
        print('Statistics for: ' + varName + ', grouped by y')
        Eu.run(sql, conn)

    except Exception as err:
        Eu.print_error(err)
Ejemplo n.º 2
0
def inspect_continuous_var(varName, conn):
    '''
    Exercise: Fix this function so that
    it fetches information for 'varName'
    instead of 'age'.
    '''
    try:
        #Min, Max, Mean
        sql = '''
        select min(?varN?*1.) min_?varN?, 
        round(avg(?varN?*1.),0) mean_?varN?, 
        max(?varN?*1.) max_?varN?
        from  bank
        '''
        sql = sql.replace('?varN?', varName)
        print('Statistics for: ' + varName)
        Eu.run(sql, conn)

        #Min, Max, Mean by class type
        sql = '''
        select y,count(*) n_people, 
        min(?varN?*1.) min_?varN?, 
        round(avg(?varN?*1.),0) mean_?varN?, 
        max(?varN?*1.) max_?varN?
        from  bank
        group by y
        '''
        sql = sql.replace('?varN?', varName)
        print('Statistics for: ' + varName + ', grouped by y')
        Eu.run(sql, conn)

    except Exception as err:
        Eu.print_error(err)
Ejemplo n.º 3
0
def main():
    conn = Eu.connection(data_work)
    try:

        sql = '''
        SELECT sql FROM sqlite_master
        WHERE tbl_name = 'bank' AND type = 'table'
        '''
        #Eu.run(sql,conn)

        ##A look at the 'age'
        sql = '''
        select age*1. from bank limit 10
        '''
        #Eu.run(sql,conn)

        ###Average age in sample
        sql = '''
        select avg(1.*age) mean_age  from bank
        '''
        #Eu.run(sql,conn)

        ####Min, Max, Mean
        sql = '''
        select min(age*1.) min_age, 
        round(avg(age*1.),0) mean_age, 
        max(age*1.) max_age
        from  bank
        '''
        #Eu.run(sql,conn)

        #####Min, Max, Mean by class type
        sql = '''
        select y,count(*) n_people, 
        min(age*1.) min_age, 
        round(avg(age*1.),0) mean_age, 
        max(age*1.) max_age
        from  bank
        group by y
        '''
        Eu.run(sql, conn)

        # Exercise: Fix the function
        inspect_continuous_var(varName='duration', conn=conn)
        inspect_continuous_var(varName='age', conn=conn)

    except Exception as err:
        Eu.print_error(err)
    finally:
        conn.close()
Ejemplo n.º 4
0
def inspect_job(conn):
    try:
        #A look at the 'marital'
        sql = '''
        select distinct job from bank
        '''
        Eu.run(sql, conn)

        #Order the results by descending order of people
        sql = '''
        select job,count(*) n_people from bank
        group by job order by n_people desc
        '''
        Eu.run(sql, conn)
    except Exception as err:
        Eu.print_error(err)
Ejemplo n.º 5
0
def inspect_categorical_var(varName, conn):
    '''
    Informal Inspection of Variables
    Parameters:
     varName : Variable to be inspected.
     conn    : Connection to sqlite database.
    '''
    try:
        sql = '''
        select ?varN?, count(*) n_people from bank
        group by ?varN?
        '''
        sql = sql.replace('?varN?', varName)
        print(sql)
        Eu.run(sql, conn)
    except Exception as err:
        Eu.print_error(err)
Ejemplo n.º 6
0
def main():
    conn = Eu.connection(data_work)
    try:
        sql = '''
        SELECT sql 
        FROM sqlite_master
        WHERE tbl_name = 'bank' AND type = 'table'
        '''
        Eu.run(sql, conn)

        #Calling inspect marital function
        inspect_marital(conn)

        #Exercise: Following function needs fixing
        inspect_job(conn)

    except Exception as err:
        Eu.print_error(err)
    finally:
        conn.close()
Ejemplo n.º 7
0
def main():
    conn = Eu.connection(data_work)
    try:
        sql = '''
        SELECT sql FROM sqlite_master
        WHERE tbl_name = 'bank' AND type = 'table'
        '''
        Eu.run(sql, conn)

        #Calling inspect marital function
        inspect_marital(conn)
        #Calling inspect marital function
        inspect_job(conn)

        #Calling inspect categorical function
        inspect_categorical_var(varName='job', conn=conn)

    except Exception as err:
        Eu.print_error(err)
    finally:
        conn.close()
Ejemplo n.º 8
0
def inspect_marital(conn):
    '''
    This function examines the variable 'marital'
    '''
    try:
        #A look at the 'marital'
        sql = '''
        select distinct marital 
        from bank
        '''
        Eu.run(sql, conn)

        #Order the results by descending order of people
        sql = '''
        select marital, 
        count(*) n_people 
        from bank
        group by marital 
        order by n_people desc
        '''
        Eu.run(sql, conn)
    except Exception as err:
        Eu.print_error(err)
Ejemplo n.º 9
0
def main():
    conn = Eu.connection(data_work)
    try:
        #Call data_ingestion to create a working database.
        data_ingestion()
        #Check the column names
        sql = '''
        SELECT sql FROM sqlite_master
        WHERE tbl_name = 'bank' AND type = 'table'
        '''
        Eu.run(sql, conn)

        #A look at the column: 'marital'
        sql = '''
        select distinct marital 
        from bank
        '''
        Eu.run(sql, conn)

        #Count how many entries for each value of marital
        sql = '''
        SELECT marital, 
        COUNT(*) n_people 
        FROM bank
        GROUP by marital
        '''
        Eu.run(sql, conn)

        #Order the results by descending order of people
        sql = '''
        SELECT marital,
        COUNT(*) n_people 
        FROM bank
        GROUP by marital 
        ORDER by n_people desc
        '''
        Eu.run(sql, conn)

    except Exception as err:
        Eu.print_error(err)
    finally:
        conn.close()