当前位置: 首页 > news >正文

关于Pandas数据分析

pandas的数据加载与预处理

数据清洗:洗掉脏数据

在这里插入图片描述

整理分析:字不如表

在这里插入图片描述

数据展现:表不如图

在这里插入图片描述

环境搭建

python+jupyter
anaconda
Jupyter Notebook
Jupyter Notebook可以在网页页面中直接编写代码和运行代码,
代码的运行结果也会直接在代码块下显示的程序。

整合所有的资源
交互性编程体验
零成本重现结果(云运行/在线运行)
运行方法
任意目录打开终端输入

jupyter-notebook
定义端口

jupyter-notebook -port 8899
更换目录

jupyter notebook -generate-config

数据加载与存储

在这里插入图片描述

常见格式存储

import pandas as pd

pd.read_excel() # 从exce1的.xls或.xlsx格式读取表格数据
pd.read_csv()#从csv文件读取数据
pd.read_table() # 从txt文件读取数据
pd.read_sq1( )#将sql查询的结果(使用SQLAlchemy) 读取为pandas的DataF rame
pd.read_html( )#读取网页中的表格数据
pd. read_json( )#从json字符串中读取数据
pd.read_xml#从xml文件中读取数据
…………………………………………等等

格式转换

data=pd.read_excel(./1.xlsx)
data.to_csv(./1.csv)

pandas两大数据结构

Series:一维数据(列)

DataFrame:多维数据

常用函数

data. shape
#数据维度,看看数据多少行,多少列
data . head(3)
#检查头数据
data. info()
#查看数据基本信息
data. dtypes
#查看数据类型
data . describe( )
#查看数值数据统计信息

描述性统计分析

data[‘省份’]. unique
#显示某列所有的唯一值
data[‘省份’].value_ counts()
#返回每个元素有多少个
data[‘收益(元) ’ ] . idxmax()
#返回最大值所在索引
data .nlargest(3,‘收益(元)’)
#返回前几个大的元素值所在行
data. sort_ values (by=’’ ,ascending=‘’)
#根据某一列进行排序

查看指定多行、列、行列

data. columns. tolist( )
data[1:5]
data[[’ ip’ ,’ phone’ ] ]
data.loc[ ]
data. iloc []
方法名称 参数 说明 边界
.loc[] [row,columns] 基于标签索引选取数据 前闭后闭
.iloc[] [row,columns] 基于整数索引选取数据 前闭后开

缺失值检查与处理

缺失数据查看和修改

data[ data. isnull().values] #查看缺失值
data.dropna() #删除缺失值
data.fillna() #填充缺失值

缺失数据高亮

#某网站会员收益表.xlsx
data.isna().sum().sum()
#检查全部缺失值总数
data.isnull().sum( )
#检查每列缺失值
#将缺失值进行高亮
(data[data.isnull().any(1) == True]
style
.highlight_null(nu11_color=‘skyblue’)
.set_table_attributes( ‘style=“font-size: 10px”’))
在这里插入图片描述

#填充固定值
datal = data.fillna(
data1
#向下填充
data2 = data. fillna(method=‘bfill’)
data2

#均值填充

data3 = data[‘收益(元)’ ].fillna(data[‘收益(元)’] .mean())
data3. map(lambda cell:‘%.2f’ % cel1)

#大多数时候,我们是从csv文件中导入的数据,此时Dataframe中对应的时间列是字符串或时间戳的形式

type(user[‘create_ time’ ][1])

#运用pd.to_ datetime().可以将对应的列转换为Pandas中的datetime64类型,便于后期的处理
user[ ‘create time’] = pd.to datetime(user[‘create_time’ ],unit=‘s’)
user[‘create_time’] = user[‘create_time’].map(lambda x : pd.to_datetime(x,unit=‘s’))
type(user['create_ time '][1])
#时间序列的索引。和普通索引一样,调用.1oc[row, columns ]进行索引
user1 = user .set_ index(‘create_time’ )
user1.1oc[‘2022-05’]

2022年5月 -2022年7月的数据

user1.1oc[ ’ 2022-05’: ‘2022-07’]
user[ create time’ ].dt.month

重复值检查与处理

data[data.duplicated()] #筛选重复值所在行
data[data.duplicated([‘姓名’])] #筛选指定列.
data.drop_duplicates() #删除重复值所在行

数据修改与筛选

#修改列名
df . rename( columns={
‘姓名’:‘中文名字’,
‘city’ : ’ birthday ’
})
#修改素引所在行
df.set_ index( ‘id’,inplace=True )
df.reset index(inplace=True)
df.drop([’ index’ ])
#修改索引名字
df.rename axis(’ 自加素引’)
#修改某一个值
df.iloc[0,1]=‘林1’
#替换指定的值
df.replace(3, 0, inplace=True )
df.replace(0,3, inplace=True)
df.replace(‘林永玲’ ,3, inplace=True )
df.iloc[0,1]=‘林永玲’
df.head(10)
df.drop(1)#删除指定行

df.drop(df[df[‘收益(元)’ ]>10000] . index)#删除条件行

df.drop(columns=[ ‘省份’], inplace=True )#删除列

df.drop(df.columns[[6,7,8]], axis=1, inplace=True )#删除列(按列号)

其它分析工具

OpenRefine
在这里插入图片描述

IBM i2
在这里插入图片描述

http://www.lryc.cn/news/174108.html

相关文章:

  • Go 并发可视化解释 - sync.Mute
  • 十几张高清世界地图
  • Python 逢七拍手游戏
  • Windows安装Mysql--免安装版
  • TypeScript中常见的操作符运算符总结
  • 什么是泛型约束?
  • 代码随想录算法训练营 动态规划part11
  • 新概念英语(第二册)复习——Lesson 16 - Lesson20
  • [题] n-皇后问题 #深搜 #DFS
  • 十小时开源了一个加密算法仓库,功能强大,后端开发人员狂喜!
  • 标准化套利的使用
  • 【MySQL数据库事务操作、主从复制及Redis数据库读写分离、主从同步的实现机制】
  • 十五、红外遥控器
  • diot函数解析
  • Python函数绘图与高等代数互融实例(一):正弦函数与余弦函数
  • Python 判断回文数
  • 人工智能在金融领域的五个应用案例
  • java 工程管理系统源码+项目说明+功能描述+前后端分离 + 二次开发
  • Effective C++看书笔记(2):构造/析构/赋值运算
  • 交换奇偶位:交换一个整数的二进制的奇偶位置(仅考虑正数情况)
  • Unity中的两种ScriptingBackend
  • vue3硅谷甄选01 | 使用vite创建vue3项目及项目的配置 环境准备 ESLint配置 prettier配置 husky配置 项目集成
  • 蓝牙核心规范(V5.4)10.5-BLE 入门笔记之HCI
  • 【计算机毕业设计】基于SpringBoot+Vue记帐理财系统的设计与实现
  • 2023年中国研究生数学建模竞赛E题
  • 基于springboot+vue的大学生科创项目在线管理系统
  • 什么是文档签名证书?PDF文档怎么签名?
  • 2023年汉字小达人区级比赛倒计时2天,最新问题解答和真题练一练
  • 关于地址存放的例题
  • Flume最简单使用