import pandas as pd
import numpy as np
1 读取数据
data=https://www.it610.com/article/pd.read_csv('zhihuyonghu.csv')
2 查看数据特点 查看前5个数据:
data[:5]
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G63c1-0.jpg)
文章图片
data.head()#默认前五个数据
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G62Q2-1.jpg)
文章图片
查看后5个数据
data[-5:]#data.tail(5)
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G64948-2.jpg)
文章图片
查看长度
data.index
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G62924-3.jpg)
文章图片
或者
len(data)
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110GCR9-4.jpg)
文章图片
3 数据预处理 3.1 数据预处理
查看 followers , following , name 各列是否有重复值
data.duplicated(['followers'])
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G62048-5.jpg)
文章图片
pd.value_counts(data.duplicated(['followers']))
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G63004-6.jpg)
文章图片
data.duplicated(['following'])
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110GC322-7.jpg)
文章图片
pd.value_counts(data.duplicated(['following']))
【jupyter|pandas数据处理简单实例 ——基于jupyter】
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G61b9-8.jpg)
文章图片
data.duplicated(['name'])
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G624A-9.jpg)
文章图片
pd.value_counts(data.duplicated(['name']))
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G63L3-10.jpg)
文章图片
统计重复值的个数
pd.value_counts(data.duplicated())
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G62555-11.jpg)
文章图片
去掉重复值
data.drop_duplicates(inplace=True)
pd.value_counts(data.duplicated())
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110GB0W-12.jpg)
文章图片
3.2 去掉name列中值为nan的数据
查看一下data中name的值是否有为null的数据
'NaN'in data.name
False
data[data.name.isnull()]
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G61022-13.jpg)
文章图片
将为null的name数据删除
data.name.dropna()
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110GA627-14.jpg)
文章图片
3.3 数据整理
查看followers的数据类型
data.followers.dtype
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G61511-15.jpg)
文章图片
改变followers的数据类型,将其改为int32
data.followers=data.followers.str.replace(',','')
data.followers.astype(np.int32)
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G63060-16.jpg)
文章图片
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
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110GB536-17.jpg)
文章图片
cats.value_counts()
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110GA526-18.jpg)
文章图片
data.following.dtype
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G62430-19.jpg)
文章图片
可视化:
import matplotlib.pyplot as plt
%matplotlib inline
pd.cut(data['following'],bin,right=False).value_counts().plot.bar(rot=20)
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G62009-20.jpg)
文章图片
x=['(0,10]','(10,100]','(100,1000]','(1000,10000]','(10000,100000]']
y=cats.value_counts()
plt.bar(x,y)
plt.show()
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G62121-21.jpg)
文章图片
问题:如果想知道details中有多少人从事互联网相关工作?
data.detail.str.contains('互联网').value_counts()
或者:
sum(data.detail.str.contains('互联网').dropna())
![jupyter|pandas数据处理简单实例 ——基于jupyter](http://img.readke.com/220902/110G610P-22.jpg)
文章图片
全部代码已上传:https://download.csdn.net/download/weixin_43808138/84995516
推荐阅读
- Python|Python数据分析与挖掘进阶篇3——数据的预处理(清洗、集成、变换)附实例!
- #|【Python数据分析学习实例】pandas库数据预处理
- pandas|数据挖掘代码实例学习——Pandas、sklearn数据预处理(包含pandas库以及所需依赖包安装教程)
- network|PYTHONP网络编程Pycharm新版本自动设置虚拟开发环境
- OpenCV图像处理|【OpenCV图像处理12】特征检测与匹配
- opencv|小白写程序之利用OpenCV Dlib Face_Recognition进行人脸识别操作
- 树莓派+python|树莓派+python+Opencv+face_confignition实现实时人脸识别(人脸识别门禁系统)
- 计算机视觉|【人脸检测】基于OpenCV和Face_Recognition实现人脸检测
- 机器视觉|工业检测深度学习方法综述