zoukankan      html  css  js  c++  java
  • 数据分析入门——美国各州人口分析

    1.案例数据来自python数据分析手册,github地址:https://github.com/jakevdp/PythonDataScienceHandbook/tree/master/notebooks/data

            不克隆项目,怎么在github下载单个文件?:https://www.cnblogs.com/zhaoqingqing/p/5534827.html

    2.pandas读取文件,参考:https://blog.csdn.net/sinat_29957455/article/details/79054126

    1.导入三剑客的包:

      

    2.读取数据:

       read_csv可以读取1G的数据(excel无法打开)

       读入各州缩写:

       

      读入各州面积:

      

      读入各州人口:

      

    3.合并pop和abbr两个df

      使用简称,合并全称,可知,需要使用merge:

      并且,左右两列没有相同columns,需要使用left_on/right_on来进行限定;

      

      由于默认使用的是内连接,所以通过shape发现会有部分未连接上的数据,通过how,可以控制内外连接方式:

      

      //使用right右连接,也会出现2448,原因是虽然右表只有51条,但是左表有多条对应,会出现一对多

       发现用于连接的列,有重复的列,我们可以使用drop进行删除一列:通过axis控制,我们就删除了一列:

      

      但是特别注意,drop返回的是删除后的新DF,原先的DF未改变(这点可以通过看控制台是否输出了内容,有输出时则是返回了新的数据,没有则是在原基础上修改)

    要想在原基础上修改,需要控制inplace参数:

      

      

      通过isnull()返回和原先形状相等的df,再通过any看哪一列有空值:

      

       进一步,通过空值操作,可以查看具体哪些州有数据缺失:(通过unique来查看唯一值)

      

      下一步,使用正确的值,填充这些缺失值:(通过boolean值来进行筛选,注意boolean这个Series的产生)

      

      USA的处理,同理:

      

      验证结果:(可以发现state已经没有空值)

      

    4.合并pop和areas两个df

      同样,使用merge:(注意这里使用left合并)

      

      继续使用isnull()来检测空值:

      

      发现area有空值,我们继续使用上面类似的方法,空值检测并填充:

        具体这里是先检测area列的bool值,再通过pop3取到哪些state是空:

      

        可以通过dropna来删除含有空数据的行:(dropna的文档注意查看)

      

        检查空值处理结果:

        

    5.使用query查找数据

      使用query来进行数据检索:https://blog.csdn.net/tcy23456/article/details/85887334

      

      对查询结果进行索引重排,使用set_index,使得state成为新的Index:(注意通过inplace控制替换原值)

      

      通过计算,返回人口密度的series:

      

      通过sort_values进行数据排序:

        进一步的,可以通过切片或者tail()函数取最小的几个,取top几

      

      使用merge,可以将计算出的密码,融合进去人口结果集:

        此处需要将Series转换为df再计算:

      

  • 相关阅读:
    Linux之文件处理命令
    Linux基础命令
    rip实验
    Linux基础之磁盘分区
    mysql安装
    centos Apache、php、mysql默认安装路径
    You probably tried to upload too large file. Please refer to documentation for ways to workaround this limit.
    Wrong permissions on configuration file, should not be world writable!
    机器会学习么 学习总结
    实验 5 Spark SQL 编程初级实践
  • 原文地址:https://www.cnblogs.com/jiangbei/p/11369174.html
Copyright © 2011-2022 走看看