zoukankan      html  css  js  c++  java
  • Python机器学习(九十二)Pandas 统计

    describe

    在整个DataFrame上使用describe(),我们可以得到一个统计结果:

    import pandas as pd
    
    # 加载数据
    movies_df = pd.read_csv("IMDB-Movie-Data.csv", index_col="Title")
    movies_df.columns = ['rank', 'genre', 'description', 'director', 'actors', 'year', 'runtime', 
                         'rating', 'votes', 'revenue_millions', 'metascore']
    # 应用describe
    movies_df.describe()

    输出

                  rank         year      runtime       rating         votes  revenue_millions   metascore
    count  1000.000000  1000.000000  1000.000000  1000.000000  1.000000e+03        872.000000  936.000000
    mean    500.500000  2012.783000   113.172000     6.723200  1.698083e+05         82.956376   58.985043
    std     288.819436     3.205962    18.810908     0.945429  1.887626e+05        103.253540   17.194757
    min       1.000000  2006.000000    66.000000     1.900000  6.100000e+01          0.000000   11.000000
    25%     250.750000  2010.000000   100.000000     6.200000  3.630900e+04         13.270000   47.000000
    50%     500.500000  2014.000000   111.000000     6.800000  1.107990e+05         47.985000   59.500000
    75%     750.250000  2016.000000   123.000000     7.400000  2.399098e+05        113.715000   72.000000
    max    1000.000000  2016.000000   191.000000     9.000000  1.791916e+06        936.630000  100.000000

    可以看到,结果中包含了:count(总数),mean(平均值),min(最小值)等等。

    describe()也可以用在一个Series上:

    movies_df['genre'].describe()

    输出

    count                        1000
    unique                        207
    top       Action,Adventure,Sci-Fi
    freq                           50
    Name: genre, dtype: object

    可以看到,这个列有207个不同的值,最高的值是Action,Adventure,Sci-Fi,显示50次(freq)。

    value_counts()可以告诉我们一个列中所有值的出现频率:

    movies_df['genre'].value_counts().head(10)

    输出

    Action,Adventure,Sci-Fi       50
    Drama                         48
    Comedy,Drama,Romance          35
    Comedy                        32
    Drama,Romance                 31
    Animation,Adventure,Comedy    27
    Action,Adventure,Fantasy      27
    Comedy,Drama                  27
    Comedy,Romance                26
    Crime,Drama,Thriller          24
    Name: genre, dtype: int64

    corr

    corr()方法可以分析出每个列之间关系,是正相关还是负相关。

    movies_df.corr()

    输出

                          rank      year   runtime    rating     votes  revenue_millions  metascore
    rank              1.000000 -0.261605 -0.221739 -0.219555 -0.283876         -0.271592  -0.191869
    year             -0.261605  1.000000 -0.164900 -0.211219 -0.411904         -0.126790  -0.079305
    runtime          -0.221739 -0.164900  1.000000  0.392214  0.407062          0.267953   0.211978
    rating           -0.219555 -0.211219  0.392214  1.000000  0.511537          0.217654   0.631897
    votes            -0.283876 -0.411904  0.407062  0.511537  1.000000          0.639661   0.325684
    revenue_millions -0.271592 -0.126790  0.267953  0.217654  0.639661          1.000000   0.142397
    metascore        -0.191869 -0.079305  0.211978  0.631897  0.325684          0.142397   1.000000

    如上所示,正数表示正相关,一个上升,另一个上升;负数表示负相关,一个上升,另一个下降。1.0表示完全相关。

    corr()方法对于这些列之间的相互关系分析是很有用的。

  • 相关阅读:
    UltraEdit 注册机使用说明
    sybase 收集常用sql语句
    过渡模式
    JavaScript 钩子
    自定义过渡的类名
    CSS过渡、CSS动画
    单元素/组件的过渡
    通过 v-once 创建低开销的静态组件
    内联模板、X-Template
    程序化的时间侦听器
  • 原文地址:https://www.cnblogs.com/huanghanyu/p/13174116.html
Copyright © 2011-2022 走看看