Python, ciencia de datos y elecciones: parte 4

La publicación n. ° 4 para principiantes trata sobre técnicas de visualización de datos.





La importancia de la visualización

Las técnicas de visualización simples, como las mostradas anteriormente, le permiten transmitir una gran cantidad de información de manera concisa. Complementan las estadísticas resumidas que calculamos anteriormente en esta serie de publicaciones, por lo que es muy importante poder utilizarlas. Las estadísticas como la media y la desviación estándar ocultan inevitablemente mucha información porque colapsan la secuencia en un solo número.





El matemático inglés Francis Anscombe compiló una colección de cuatro diagramas de puntos, ahora conocidos como el cuarteto de Anscombe , que tienen propiedades estadísticas casi idénticas (incluida la media, la varianza y la desviación estándar). A pesar de esto, muestran claramente que la distribución de los valores de las secuencias y es muy divergente:





, . , 2013 .:





, — 30% — . , — - .





, , , . , , , . 30% , . , 5% .





, 1938 ., . , 50 : , 1, .





, , , , , , . , , , .





, , . sp.random.normal



scipy, . 0 1, , . 70150 7679.





. :





def ex_1_24():
    '''     
        '''
    emp      = load_uk_scrubbed()['Electorate']
    fitted   = stats.norm.rvs(emp.mean(), emp.std(ddof=0), len(emp))
    df  = empirical_cdf(emp)
    df2 = empirical_cdf(fitted)
    ax  = df.plot(0, 1, label='')    
    df2.plot(0, 1, label='', grid=True, ax=ax)    
    plt.xlabel('')
    plt.ylabel('')
    plt.legend(loc='best')
    plt.show()
      
      



:





, . , .





, , :





def ex_1_25():
    '''   
        '''
    qqplot( load_uk_scrubbed()['Electorate'] )
    plt.show()
      
      



, :





, . , , , .





, , , . Victors () , (Con) - (LD) , .





def ex_1_26():
    '''    ""  
            '''
    df = load_uk_scrubbed()
    df[''] = df['Con'] + df['LD']
    freq = Counter(df['Con'].apply( lambda x: x > 0 ))
    print(' "": %d,  ..  %d' 
          % (freq[True], freq[False]))
      
      



 "": 631,  ..  19
      
      



, 19 . , - : Con LD ( ), , ? Counter, :





'''    
   " " (Con)  
   "- " (LD)'''
df = load_uk_scrubbed()
Counter(df['Con'].apply(lambda x: x > 0)), 
    Counter(df['LD'].apply(lambda x: x > 0))
      
      



(Counter({False: 19, True: 631}), Counter({False: 19, True: 631}))
      
      



, , . isnull



, , , :





def ex_1_27():
    '''    ,  
       " " (Con)  
       "-" (LD)  '''
    df   = load_uk_scrubbed()
    rule = df['Con'].isnull() & df['LD'].isnull()
    return df[rule][['Region', 'Electorate', 'Con', 'LD']]
      
      



 





Region





Electorate





Con





LD





12





Northern Ireland





60204.0





NaN





NaN





13





Northern Ireland





73338.0





NaN





NaN





14





Northern Ireland





63054.0





NaN





NaN

























584





Northern Ireland





64594.0





NaN





NaN





585





Northern Ireland





74732.0





NaN





NaN





, . , . , ? . , - , - , . , , , — — , .





, , , , . , , :





def load_uk_victors():
    '''   , 
          '''
    df = load_uk_scrubbed()
    rule = df['Con'].notnull()
    df   = df[rule][['Con', 'LD', 'Votes', 'Electorate']] 
    df['']       = df['Con']        + df['LD'] 
    df[' '] = df[''] / df['Votes'] 
    df['']             = df['Votes']      / df['Electorate']
    return df
      
      



: Victors, Victors Share Turnout, .. , . , , :





def ex_1_28():
    '''    
          '''
    qqplot( load_uk_victors()[' '] )
    plt.show()
      
      



:





, , , , , « » . , , , .





Github. .





, 5, «Python, » .








All Articles