首页 > 编程语言 >【python学习】第三方库之pandas库的定义、特点、功能、使用场景和代码示例

【python学习】第三方库之pandas库的定义、特点、功能、使用场景和代码示例

时间:2024-07-17 10:00:12浏览次数:12  
标签:示例 python Series DataFrame df 索引 print 数据 pandas

引言

pandas是一个强大的Python库,用于数据分析和数据处理。它基于NumPy,提供了灵活的数据结构(Series和DataFrame)和数据操作功能,是数据科学和机器学习中不可或缺的工具

文章目录

一、安装pandas第三方库

在pycharm中如图所示操作即可:

在这里插入图片描述

二、pandas的定义

pandas是一个Python第三方库,用于数据分析和数据处理

三、特点

3.1 强大的数据结构

Pandas提供了DataFrame和Series两种核心数据结构,可以方便地存储和操作数据

3.2 灵活的数据操作

Pandas提供了丰富的数据操作功能,如索引、切片、过滤等

3.3 数据聚合和转换

Pandas提供了数据聚合和转换的功能,如分组、汇总、转换等

3.4 数据清洗

Pandas提供了数据清洗的功能,如缺失值处理、重复值处理等

3.5 数据可视化

Pandas与Matplotlib和Seaborn等库结合使用,可以进行数据可视化

3.6 集成性

Pandas可以与NumPy、Matplotlib、Seaborn等库无缝集成

四、功能

4.1 数据读取

从CSV、Excel、JSON等多种数据源读取数据

4.2 数据操作

索引、切片、过滤、添加和删除列等

4.3 数据聚合和转换

分组、汇总、转换数据类型等

4.4 数据清洗

处理缺失值、重复值等

4.5 数据可视化

绘制图表、图形等

4.6 集成性

与NumPy、Matplotlib、Seaborn等库无缝集成

五、使用场景

5.1 数据分析

对大量数据进行分析,如趋势分析、统计分析等

5.2 数据处理

对数据进行清洗、转换等操作

5.3 数据可视化

绘制图表、图形等,以便更好地理解数据

5.4 机器学习

作为数据预处理和特征工程的一部分

5.5 报告和文档

生成数据报告和文档

六、代码示例

6.1 对Series一维数组进行操作

6.1.1 代码

# 创建一个Series对象,包含索引和值
obj = Series([4, 5, 6, -10], index=['a', 'b', 'c', 'd'])

# 打印Series对象,显示索引和值
print(obj)

# 打印Series对象的dtype(数据类型)
print(obj.dtype)

# 打印Series对象的索引
print(obj.index)

# 打印Series对象的值
print(obj.values)

# 修改索引'a'对应的值
obj['a'] = 2222

# 再次打印Series对象,显示更新后的值
print(obj)

# 检查字符串'aa'是否在Series对象的索引中
print('aa' in obj)

6.1.2 代码解释

  1. 创建一个Series对象,包含四个整数和一个索引列表
  2. 打印原始Series对象,显示索引和值
  3. 打印Series对象的dtype,这里是int64,表示数据类型是64位整数
  4. 打印Series对象的索引,这是一个由字符串组成的索引列表
  5. 打印Series对象的值,这是原始的整数列表
  6. 修改索引’a’对应的值为2222
  7. 再次打印更新后的Series对象,显示新的值
  8. 检查字符串’aa’是否在Series对象的索引中,由于索引中没有’aa’,所以返回False

6.2 对DataFrame多维数组进行操作

6.2.1 代码

import pandas as pd

# 创建一个DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]}
df = pd.DataFrame(data)

# 显示DataFrame
print(df)

# 添加新列
df['Salary'] = [50000, 60000, 70000]

# 删除列
del df['Salary']

# 更新数据
df.loc[1, 'Age'] = 32

# 选择数据
print(df.loc[1])  # 输出: Bob     32

6.2.2 代码解释

  1. 导入Pandas库并给它一个别名pd
  2. 创建一个包含两列(‘Name’和’Age’)的字典,其中列值是列表
  3. 使用字典创建一个DataFrame对象,列名来自字典的键,列值来自字典的值
  4. 打印DataFrame对象,显示索引和值
  5. 添加新列,列名为’Salary’,值为一个列表
  6. 删除名为’Salary’的列
  7. 更新索引为1的行中’Age’列的值为32
  8. 选择索引为1的行,并打印出来,输出结果是’Bob’和’32’,因为’Age’列的值被更新了

6.3 从CSV文件读取数据,并进行基本的数据操作:

6.3.1 代码

# 导入pandas库
import pandas as pd

# 从CSV文件读取数据
df = pd.read_csv('data.csv')

# 显示数据
print(df)

# 索引和切片
print(df.loc[1:3, ['Name', 'Age']])

# 过滤数据
print(df[df['Age'] > 25])

# 添加新列
df['Salary'] = [50000, 60000, 70000]

# 删除列
del df['Salary']

# 数据聚合和转换
grouped = df.groupby('Name')
print(grouped.mean())

# 数据清洗
df.fillna(0, inplace=True)

# 导入数据可视化第三方库
import matplotlib.pyplot as plt

# 绘制柱状图
df.plot(kind='bar', x='Name', y='Age')
plt.show()

6.3.2 代码解释

  1. 读取了一个CSV文件,并创建了一个DataFrame对象
  2. 使用索引和切片来选择DataFrame中的特定部分
  3. 使用条件过滤来筛选数据
  4. 添加和删除列
  5. 数据聚合和转换
  6. 使用Pandas和Matplotlib库来绘制数据可视化图表

七、总结(思维导图)

在这里插入图片描述

标签:示例,python,Series,DataFrame,df,索引,print,数据,pandas
From: https://blog.csdn.net/m0_49243785/article/details/140475297

相关文章

  • 【python】PyQt5的窗口界面的各种交互逻辑实现,轻松掌控图形化界面程序
    ✨✨欢迎大家来到景天科技苑✨✨......
  • Pytorch的编译新特性TorchDynamo的工作原理和使用示例
    在深度学习中,优化模型性能至关重要,特别是对于需要快速执行和实时推断的应用。而PyTorch在平衡动态图执行与高性能方面常常面临挑战。传统的PyTorch优化技术在处理动态计算图时效果有限,导致训练时间延长和模型性能不佳。TorchDynamo是一种为PyTorch设计的即时(JIT)编译器,通过在运行时......
  • 自动化测试-RobotFramework环境准备(python基础)
    学习总结,有错误欢迎指出。总结:推荐为每个python相关项目创建独立的虚拟环境。1.虚拟环境安装虚拟环境:为每个项目提供独立的执行器和包管理。示例:使用python内置库venv模块,在项目根目录下创建虚拟环境。python-mvenv.venv-m:执行“位于搜索路径(sys.path)下......
  • Python办公自动化:效率飞跃,自动化批量汇总Excel到Word
    Python办公自动化:效率飞跃,自动化批量汇总Excel到Word原创 丹心向阳 数海丹心 2024年06月23日07:30 山东摘要:每个月底,是许多数据分析师的梦魇,尤其是当他们需要从成百上千的Excel报表中汇总数据到Word时。本文将讲述小李如何使用Python自动化技术,几秒钟完成原本需要通宵达旦......
  • Python自动化:智能对比Word文档,秒速锁定差异!
    Python自动化:智能对比Word文档,秒速锁定差异!原创 丹心向阳 数海丹心 2024年06月28日07:00 山东摘要:在我们的工作和学习中,经常需要对文档进行多次修改,如何快速准确地识别文档的最终版本,一直是让人头疼的问题。本文将介绍一种Python自动化技术,它可以自动对比两个Word文档之间......
  • Python自动化:10行代码免费解锁抖音、快手、小红书平台资源,无水印视频一键下载
    Python自动化:10行代码免费解锁抖音、快手、小红书平台资源,无水印视频一键下载原创 丹心向阳 数海丹心 2024年06月19日07:30 山东摘要:抖音、快手、小红书作为国内顶尖的短视频和娱乐平台,汇聚了巨大的流量和丰富的创意内容。对于自媒体从业人员而言,这些平台上的灵感和视频资......
  • 【python】Enum 枚举类
    Enum枚举类[1]Enum是一组与互不相同的值分别绑定的符号名,类似于全局变量。因为枚举通常表示常量,所以建议枚举成员命名时采用大写。定义类定义classColor(Enum):#classsyntaxRED=1GREEN=2BLUE=3方法定义Color=Enum('Color',['RED','GRE......
  • OpenSSL RSA相关基本接口和编程示例
    本文测试代码基于Openssl版本:1.1.1fRSA接口接口简介RSA对象创建intRSA_generate_key_ex(RSA*rsa,intbits,BIGNUM*e,BN_GENCB*cb);功能:创建⼀对rsa的公钥私钥参数:RSA密钥指针,密钥bit位数,公钥指数的⼤数形式指针,回调函数返回:成功返回1,失败返回0e主要有两个取值......
  • 2024年华为OD机试真题-符号运算-(C++/Java/python)-OD统一考试(C卷D卷)
      2024华为OD机试真题目录-(B卷C卷D卷)-【C++JavaPython】    题目描述给定一个表达式,求其分数计算结果。表达式的限制如下:所有的输入数字皆为正整数(包括0)仅支持四则运算(+-*,/)和括号结果为整数或分数,分数必须化为最简格式(比如6,3/4,7/8,90/7)除数可能为0,如果遇到......
  • 081、Python 关于方法重写
    所谓方法重写,就是子类对父类已有的方法,重新编写自己的实现版本,这个过程就叫做方法重写(override)。说到方法重写,就不得不提多态。因为方法重写是实现多态的一种重要方式。所谓多态,就是给不同的对象发送同样的消息,不同的对象执行了不同的行为。即多态允许我们以统一的接口来......