日知录(十):python数据分析

本文深入讲解Pandas库的DataFrame操作,涵盖数据读取、处理、运算及科学计算库的总结,如matplotlib、numpy等,适合数据分析初学者及进阶者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


写在前面:
在刷着视频时突然对某个操作有了想法,表格数据是语数英科学四门的分数和总分,想让语数英三列相加,再比较总分。因为我的数据和视频中的例子不一样,有了这个三列相加的想法,想着要去怎么实现,以为是用自定义函数,发现自定义函数只能针对某列或者某行的,实现不了。之后了解对这些科学计算库的总体需要掌握的概念(增,删,查,改的4种方式),决定这周就写这个内容了。至于怎么实现三列相加,最简单的列列相加运算就可以。
关于笔记,都记在jupyter notebook上面,把前面的部分.md文件导入加进来感觉阅读效果不是很好,因为部分dataframe的显示和网页本身的索引显示可能会使阅读出现歧义,所以本篇大多是以截图方式记录,下次就知道怎么用.md导入了。
注:本篇是 日知录(八):python 人工智能基础和数据分析基础的后续。

一、pandas

1.DataFrame

DataFrame是一个表格型的数据结构,含有一组有序的列,是一个二维结构。DataFrame可以被看做是由Series组成的字典,并且共用一个索引。

1.1生成方式

在这里插入图片描述
在这里插入图片描述

1.2 读取.csv文件并保存指定列

读取csv文件时,先把.xls 文件另存为.csv,在记事本中打开.csv之后选择字符编码形式’UTF-8’
关于设置UTF-8的图示

# 读取中文表格
import pandas as pd
pd.read_csv("D:/chengxu/jupyter/0727/douban.csv",encoding='gbk')

结果:在这里插入图片描述

正常读取步骤: 文件----显示----修改(删除or 增加)
在这里插入图片描述
在这里插入图片描述
保存’math’列
在这里插入图片描述

pandas读取csv数据时设置index
在这里插入图片描述

这里index_col可以设为列名
后续更改index可以使用df.index =df.iloc[:,“column”].tolist()
或df.set_index(‘column’)

1.3 基本数据操作

1.3.1 索引,查找

一般要求是先列后行
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
使用.loc//.iloc可以先行后列
在这里插入图片描述
组合索引
在这里插入图片描述

1.3.2 赋值

在这里插入图片描述
在这里插入图片描述

1.3.3 排序

DateFrame排序
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

series 排序

在这里插入图片描述

1.4 基本运算

1.4.1 算数运算

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.4.2 逻辑运算

在这里插入图片描述
在这里插入图片描述

1.4.3 统计运算

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.4.4 累计统计函数

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

1.4.5自定义运算

在这里插入图片描述
在这里插入图片描述

2.高级处理

2.1 缺失值处理

包括缺失值的类型,应用replacce实现数据的替换,应用dropna实现缺失值的删除,应用filna 实现缺失值的填充
,应用isnull 判断是否有缺失值NaN…
如何处理NaN
1.判断数据是否为NaN
pd.isnull(df)////pd.notnull(df)
np.any(pd.isnull(grade))///np.all(pd.notnull(grade))
2.处理方式
(1)存在缺失值,并且是np.nan
删除dropna(axis=‘rows’)//替换fillna(value,inplace=True),value替换成的值
(2)不是缺失值NaN,有默认标记的
replace(to_replace,value)替换
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2 数据离散化

为了简化数据结构,用来减少给定连续属性值的个数
应用cut、qcut实现数据的区间分组
应用get_dummies实现数据的one-hot编码

在这里插入图片描述
下图是一种添加新列新行的方法:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下图为增加行的实现方法,更多方法详见pandas删除行删除列,增加行增加列
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.3 合并

应用pd.concat()实现数据的合并 ,比如数据由多张表构成,可将不同的内容合并在一起分析。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.4 交叉表和透视表

应用crosstab和pivot_table实现交叉表与透视表

下图在导入.csv文件时对索引进行设置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.5 分组与聚合

在这里插入图片描述
在这里插入图片描述
上图的错误:DataError: No numeric types to aggregate.
使用.astype()强制转换数据类型
在这里插入图片描述
在这里插入图片描述

二、科学计算库的总结

总结:增,删,查,改
Python pandas常用函数详解
数据处理常见bug报错整理1

1.matplotlib

在这里插入图片描述

2.numpy

在这里插入图片描述
对numpy中shape的理解
一维,二维,三维,多维···

3.pandas

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值