Python数据分析实战-Boston Public Schools GEO数据分析-Part1

Cocainebai 2018-11-16

     由于从事人工智能的工作,接下来打算分享一系列的以案例形式的人工智能、

    数据分析的博客文章。欢迎大家持续关注。本次我来分享一个数据分析的案例

  

项目目标:

      

      Boston Public Schools Geo数据是来自于Boston地区的公共学校的数据,具体描述了学校的坐标,名字,类型等。基于此数据,我们可以学习一些基本的Python数据分析的方法。例如,研究学校的分布情况,类型统计等。

数据集介绍:

   数据集的介绍如下,其中比较重要的字段有X,Y坐标,ADDRESS地址,ZIPCODE,School类型

Data columns (total 21 columns):

X 131 non-null float64

Y 131 non-null float64

OBJECTID_1 131 non-null int64

OBJECTID 131 non-null int64

BLDG_ID 131 non-null int64

BLDG_NAME 131 non-null object

ADDRESS 131 non-null object

CITY 131 non-null object

ZIPCODE 131 non-null int64

CSP_SCH_ID 131 non-null int64

SCH_ID 131 non-null int64

SCH_NAME 131 non-null object

SCH_LABEL 131 non-null object

SCH_TYPE 131 non-null object

SHARED 131 non-null object

COMPLEX 131 non-null object

Label 131 non-null int64

TLT 131 non-null int64

PL 131 non-null object

POINT_X 131 non-null float64

POINT_Y 131 non-null float64

关键代码实现:

  1.     加载数据

      

schools = pd.read_csv('../input/Public_Schools.csv')
schools.info()

    可以看到数据字段如下,一共有21个字段,其中有9个Object类型,4个float64, 8个int64

    

<class 'pandas.core.frame.DataFrame'>

RangeIndex: 131 entries, 0 to 130

Data columns (total 21 columns):

X 131 non-null float64

Y 131 non-null float64

OBJECTID_1 131 non-null int64

OBJECTID 131 non-null int64

BLDG_ID 131 non-null int64

BLDG_NAME 131 non-null object

ADDRESS 131 non-null object

CITY 131 non-null object

ZIPCODE 131 non-null int64

CSP_SCH_ID 131 non-null int64

SCH_ID 131 non-null int64

SCH_NAME 131 non-null object

SCH_LABEL 131 non-null object

SCH_TYPE 131 non-null object

SHARED 131 non-null object

COMPLEX 131 non-null object

Label 131 non-null int64

TLT 131 non-null int64

PL 131 non-null object

POINT_X 131 non-null float64

POINT_Y 131 non-null float64

dtypes: float64(4), int64(8), object(9)

memory usage: 21.6+ KB

2.接下来,探索数据的缺失值

    

schools.isnull().any()

   可以看到,数据没有缺失值

   

1 X False

 2 Y False

 3 OBJECTID_1 False

 4 OBJECTID False

 5 BLDG_ID False

 6 BLDG_NAME False

 7 ADDRESS False

 8 CITY False

 9 ZIPCODE False

10 CSP_SCH_ID False

11 SCH_ID False

12 SCH_NAME False

13 SCH_LABEL False

14 SCH_TYPE False

15 SHARED False

16 COMPLEX False

17 Label False

18 TLT False

19 PL False

20 POINT_X False

21 POINT_Y False

22 dtype: bool

    接下来,Count frequency of schools in each city

    

1 schools_per_city = schools['CITY'].value_counts()
2 sns.set()
3 plt.rcParams['figure.figsize'] = [20, 7]
4 sns.barplot(x=schools_per_city.index, y=schools_per_city.get_values())


    
Python数据分析实战-Boston Public Schools GEO数据分析-Part1
 

       可以看到不同地区的公立学校不同数量,Boston接近15所。

      按照ZIPCode统计学校情况 : 其中sns 为seaborn包

     

school_zipcode = schools['ZIPCODE'].value_counts() sns.set() 
sns.barplot(x=school_zipcode.index, y=school_zipcode.get_values())

Python数据分析实战-Boston Public Schools GEO数据分析-Part1
 

     可以看到随着zipcode的变化,学校数量也是发生变化的。

     未完待续~  欢迎大家关注我的公众号,“思享会Club”,获取该内容资源。欢迎大家访问http://gkhelp.cn 获取更多项目。个人公众号图片如下:

     
Python数据分析实战-Boston Public Schools GEO数据分析-Part1
 

相关推荐