当前位置: 首页 > 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
在这里插入图片描述

相关文章:

关于Pandas数据分析

pandas的数据加载与预处理 数据清洗:洗掉脏数据 整理分析:字不如表 数据展现:表不如图 环境搭建 pythonjupyter anaconda Jupyter Notebook Jupyter Notebook可以在网页页面中直接编写代码和运行代码, 代码的运行结果也会直接在代码块下显示…...

Go 并发可视化解释 - sync.Mute

在学习 Go 编程语言时,您可能会遇到这句著名的格言:“不要通过共享内存来进行通信;相反,通过通信来共享内存。” 这句话构成了 Go 强大并发模型的基础,其中通道(channels)作为协程之间的主要通信…...

十几张高清世界地图

十几张高清世界地图 仅供学习!...

Python 逢七拍手游戏

"""逢七拍手游戏介绍:逢七拍手游戏的规则是:从1开始顺序数数,数到有7,或者是7的倍数时,就拍一手。例如:7、14、17......70......知识点:1、循环语句for2、嵌套条件语句if/elif/e…...

Windows安装Mysql--免安装版

在Windows系统上安装免安装版MySql的步骤 官方下载地址:https://dev.mysql.com/downloads/mysql/ 将下载好的文件“mysql-5.7.18-winx64”解压缩到C盘的 目录下: 配置环境变量: (略) 正式安装,添加my.i…...

TypeScript中常见的操作符运算符总结

一、非空断言操作符(!) 当我们⽆法断定类型时,可以使用后缀表达式操作符 ! 来断⾔操作对象是⾮ null 或⾮ undefined 类型。 具体来说,比如表达式: x ! , 结果将从 x 值域中排除 null 和 unde…...

什么是泛型约束?

泛型约束(Generic Constraints)是一种在使用泛型时限制可接受类型的方式。它允许我们对泛型类型参数进行限定,以确保只有符合特定条件的类型才能被使用。 泛型约束的作用是提供更精确的类型控制和更强的类型安全性。通过约束泛型类型参数&am…...

代码随想录算法训练营 动态规划part11

一、买卖股票的最佳时机III 123. 买卖股票的最佳时机 III - 力扣(LeetCode) 请选一个喜欢的吧/(ㄒoㄒ)/~~123. 买卖股票的最佳时机 III - 力扣(LeetCode) class Solution {public int maxProfit(int[] prices) {if(pricesnul…...

新概念英语(第二册)复习——Lesson 16 - Lesson20

前言 新概念英语的16-20课,从21课开始,每天一课的速度更新,方便你能快速跟上。 文章目录 前言Lesson 16 - A polite request原文译文单词 Lesson 17 - Always Young原文译文单词 Lesson 18 - He often does this!原文译文单词Lesson 19 - So…...

[题] n-皇后问题 #深搜 #DFS

题目 AcWing 843. n-皇后问题 代码 #include<bits/stdc.h> using namespace std; const int N 20; int n, p[N]; char g[N][N]; bool col[N], dg[N], udg[N]; void D (int u){if(u n){for(int j 0; j < n; j )puts(g[j]);cout << endl;return ;}for(int i…...

十小时开源了一个加密算法仓库,功能强大,后端开发人员狂喜!

写在前面 昨晚上睡觉前我就在想能不能把多个加密算法集成到一个库中&#xff0c;方便开发者调用&#xff0c;说干就干&#xff0c;今天肝了一天&#xff0c;中午直接吃的外卖哈哈哈哈&#xff0c;终于把仓库开源了&#xff0c;欢迎各位Go开发者Star和Fork! 仓库地址 go-cryp…...

标准化套利的使用

交易对象&#xff1a;目前使用郑商所&#xff0c;大商所的spd标准化套利组合进行交易。 交易平台&#xff1a;易盛极星极星产品网 手续费研究:白糖期货手续费和保证金2023年09月更新 - 九期网 本人使用的期货交易公司&#xff1a;中信期货&#xff08;幸亏资金量大&#xff…...

【MySQL数据库事务操作、主从复制及Redis数据库读写分离、主从同步的实现机制】

文章目录 MySQL数据库事务操作、主从复制及Redis数据库读写分离、主从同步的实现机制ACID及如何实现事务隔离级别&#xff1a;MVCC 多版本并发控制MySQL数据库主从复制主从同步延迟怎么处理Redis 读写分离1.什么是主从复制2.读写分离的优点 Redis为什么快呢&#xff1f; MySQL数…...

十五、红外遥控器

十五、红外遥控器 介绍基本接收和发送遥控器键码外部中断和外部中断寄存器 红外解码中断函数红外遥控电机模块电机调速 介绍 基本接收和发送 空闲状态&#xff1a;红外LED不亮&#xff0c;接收头输出高电平发送低电平&#xff1a;红外LED以38KHz闪烁&#xff0c;接收头输出低…...

diot函数解析

文章目录 前言一、Rio_readinitb二、Rio_readlineb三、strstr四、strcat五、Open_clientfd六、Rio_writen总结 前言 备战CSAPP中的ProxyLab时解析书上的diot函数中遇到了一些不会的函数&#xff0c;遂解析记录。 一、Rio_readinitb 读和解析请求行 Rio_readinitb(&rio,…...

Python函数绘图与高等代数互融实例(一):正弦函数与余弦函数

Python函数绘图与高等代数互融实例(一):正弦函数与余弦函数 Python函数绘图与高等代数互融实例(二):闪点函数 Python函数绘图与高等代数互融实例(三):设置X|Y轴|网格线 Python函数绘图与高等代数互融实例(四):设置X|Y轴参考线|参考区域 Python函数绘图与高等代数互融实例(五…...

Python 判断回文数

"""判断输入的数是否为回文数介绍&#xff1a;回文数&#xff1a;数字从高位到低位正序排列和低位到高位逆序排列都是同一数值例如&#xff1a;数字 1221 无论正序还是逆序都是 1221知识点&#xff1a;1、获取字符串长度函数len()2、条件语句if/elif/else3、循环…...

人工智能在金融领域的五个应用案例

随着科技的进步&#xff0c;人工智能(Artificial Intelligence&#xff0c;AI)正逐渐渗透到各个行业中&#xff0c;其中包括金融领域。本文介绍人工智能在金融领域的五个应用案例&#xff0c;以期帮助大家更好地了解这个新兴技术在金融中的价值和作用。 文章目录 Part1 风险管理…...

java 工程管理系统源码+项目说明+功能描述+前后端分离 + 二次开发

Java版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下&#xff1a; 首页 工作台&#xff1a;待办工作、消息通知、预警信息&#xff0c;点击可进入相应的列表 项目进度图表&#xff1a;选择&#xff08;总体或单个&#xff09;项目显示…...

Effective C++看书笔记(2):构造/析构/赋值运算

构造/析构/赋值运算 5&#xff1a;了解C默默编写并调用哪些函数6&#xff1a;如果不想使用编译器自动生成的函数&#xff0c;就该明确拒绝7&#xff1a;为多态基类声明virtual析构函数8&#xff1a;别让异常逃离析构函数9&#xff1a;绝不在构造和析构过程中调用virtual函数10&…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)

文章目录 1.什么是Redis&#xff1f;2.为什么要使用redis作为mysql的缓存&#xff1f;3.什么是缓存雪崩、缓存穿透、缓存击穿&#xff1f;3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...

20个超级好用的 CSS 动画库

分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码&#xff0c;而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库&#xff0c;可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画&#xff0c;可以包含在你的网页或应用项目中。 3.An…...

【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变(硬件篇)

本项目是基于 STM32F103C8T6 微控制器的 SPWM(正弦脉宽调制)电源模块,能够生成可调频率和幅值的正弦波交流电源输出。该项目适用于逆变器、UPS电源、变频器等应用场景。 供电电源 输入电压采集 上图为本设计的电源电路,图中 D1 为二极管, 其目的是防止正负极电源反接, …...

第7篇:中间件全链路监控与 SQL 性能分析实践

7.1 章节导读 在构建数据库中间件的过程中&#xff0c;可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中&#xff0c;必须做到&#xff1a; &#x1f50d; 追踪每一条 SQL 的生命周期&#xff08;从入口到数据库执行&#xff09;&#…...

苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会

在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...

【UE5 C++】通过文件对话框获取选择文件的路径

目录 效果 步骤 源码 效果 步骤 1. 在“xxx.Build.cs”中添加需要使用的模块 &#xff0c;这里主要使用“DesktopPlatform”模块 2. 添加后闭UE编辑器&#xff0c;右键点击 .uproject 文件&#xff0c;选择 "Generate Visual Studio project files"&#xff0c;重…...

ubuntu22.04 安装docker 和docker-compose

首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...

深度解析:etcd 在 Milvus 向量数据库中的关键作用

目录 &#x1f680; 深度解析&#xff1a;etcd 在 Milvus 向量数据库中的关键作用 &#x1f4a1; 什么是 etcd&#xff1f; &#x1f9e0; Milvus 架构简介 &#x1f4e6; etcd 在 Milvus 中的核心作用 &#x1f527; 实际工作流程示意 ⚠️ 如果 etcd 出现问题会怎样&am…...

SQL进阶之旅 Day 22:批处理与游标优化

【SQL进阶之旅 Day 22】批处理与游标优化 文章简述&#xff08;300字左右&#xff09; 在数据库开发中&#xff0c;面对大量数据的处理任务时&#xff0c;单条SQL语句往往无法满足性能需求。本篇文章聚焦“批处理与游标优化”&#xff0c;深入探讨如何通过批量操作和游标技术提…...