pandas数据处理简单实例 ——基于jupyter

import pandas as pd
import numpy as np

1 读取数据

data=pd.read_csv('zhihuyonghu.csv')

2 查看数据特点

查看前5个数据:

data[:5]

pandas数据处理简单实例 ——基于jupyter_第1张图片

data.head()#默认前五个数据

pandas数据处理简单实例 ——基于jupyter_第2张图片
查看后5个数据

data[-5:]#data.tail(5)

pandas数据处理简单实例 ——基于jupyter_第3张图片
查看长度

data.index

在这里插入图片描述
或者

len(data)

在这里插入图片描述

3 数据预处理

3.1 数据预处理

查看 followers , following , name 各列是否有重复值

data.duplicated(['followers'])

pandas数据处理简单实例 ——基于jupyter_第4张图片

pd.value_counts(data.duplicated(['followers']))

pandas数据处理简单实例 ——基于jupyter_第5张图片

data.duplicated(['following'])

pandas数据处理简单实例 ——基于jupyter_第6张图片

pd.value_counts(data.duplicated(['following']))

pandas数据处理简单实例 ——基于jupyter_第7张图片

data.duplicated(['name'])

pandas数据处理简单实例 ——基于jupyter_第8张图片

pd.value_counts(data.duplicated(['name']))

pandas数据处理简单实例 ——基于jupyter_第9张图片
统计重复值的个数

pd.value_counts(data.duplicated())

pandas数据处理简单实例 ——基于jupyter_第10张图片
去掉重复值

data.drop_duplicates(inplace=True)
pd.value_counts(data.duplicated())

在这里插入图片描述

3.2 去掉name列中值为nan的数据

查看一下data中name的值是否有为null的数据

'NaN'in data.name

False

data[data.name.isnull()]

pandas数据处理简单实例 ——基于jupyter_第11张图片
将为null的name数据删除

data.name.dropna()

pandas数据处理简单实例 ——基于jupyter_第12张图片

3.3 数据整理

查看followers的数据类型

data.followers.dtype

在这里插入图片描述
改变followers的数据类型,将其改为int32

data.followers=data.followers.str.replace(',','')
data.followers.astype(np.int32)

pandas数据处理简单实例 ——基于jupyter_第13张图片

3.4 数据分组

目标:想知道在不同区间内,比如0-10,10-100,100-1000,1000-10000,10000-100000等等的following数

bin=[0,10,100,1000,10000,100000]
cats = pd.cut(data.following,bin)
cats

pandas数据处理简单实例 ——基于jupyter_第14张图片

cats.value_counts()  

pandas数据处理简单实例 ——基于jupyter_第15张图片

data.following.dtype

在这里插入图片描述
可视化:

import matplotlib.pyplot as plt
%matplotlib inline
pd.cut(data['following'],bin,right=False).value_counts().plot.bar(rot=20)

pandas数据处理简单实例 ——基于jupyter_第16张图片

x=['(0,10]','(10,100]','(100,1000]','(1000,10000]','(10000,100000]']
y=cats.value_counts()  
plt.bar(x,y)
plt.show()

pandas数据处理简单实例 ——基于jupyter_第17张图片

问题:如果想知道details中有多少人从事互联网相关工作?

data.detail.str.contains('互联网').value_counts()

或者:

sum(data.detail.str.contains('互联网').dropna())

pandas数据处理简单实例 ——基于jupyter_第18张图片

全部代码已上传:https://download.csdn.net/download/weixin_43808138/84995516

你可能感兴趣的:(jupyter,jupyter,python,数据挖掘)