Juputer:利用python的pandas数据分析人群收入模型1

首先导入需要的模块

''''

import pandas as pd

import numpy as np

''''

导入需要分析的数据文件

'data=pd.read_csv('lnp.csv',index_col='L')'

当导入一个数据文件时,首先需要简单分析下数据文件的内容。根据自己的需要同时查看多列索引的内容,有利于思考后面采用那种分析方式和模块函数。


'data.loc[(data['Gender']=='Female')&(data['Education']=='Not Graduate')

),['Gender','Education','resume']].head(5)'

自定义函数,查找关键列的数据缺失情况

''''

#Create a new function:

def num_miss(x):

return sum(x.isnull())

print data.apply(num_miss, axis=1).head()

''''

依据数据类型的不同,采用不懂的方式进行数据填充:

1.对于像性别等非重要数据类型,可根据统计数据的总数的概率分布,对其进行数据填充。

'data['Gender'].fillna(mode(data['Gender'])[0][0], inplace=True)'

2.对于关键性的数据可采用mean、median、mode等许多不同的方法,对于收入这列数据采用分析mean的方式填充缺失值。

''''

import_nan=data.pivot_table(values=["resume"],index["Gender","Married","Employed"], aggfunc=np.mean)

import_nan #查看数据类型与结构

''''

由于得到的是一个多索引的二维数据,因此需要利用多次循环对源数据缺失值进行赋值

''''

for i,row in data.loc[data['resume'].isnull(),:].iterrows():

        ind = tuple([row['Gender'],row['Married'],row['Employed']])

        data.loc[i,'resume'] = import_nan[ind].values[0]

''''

以上是对源数据的基本数据处理工作。

你可能感兴趣的:(Juputer:利用python的pandas数据分析人群收入模型1)