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

数据分析库 Pandas

对于Pandas的简单认识和基本操作的练习

一 介绍 

Pandas 是一个开源的数据分析和数据处理库,它是基于 Python 编程语言的库。
Pandas 提供了易于使用的数据结构和数据分析工具,特别适用于处理结构化数据,如表格型数据(类似于 Excel 表格)。
Pandas 是数据科学和分析领域中常用的工具之一,它使得用户能够轻松地从各种数据源中导入数据,并对数据进行高效的操作和分析。
Pandas 广泛应用在学术、金融、统计学等各个数据分析领域。

主要数据结构

Pandas主要引入了两种新的数据结构:DataFrame 和 Series。
Series:类似于一维数组或列表,是由一组数据以及与之相关的数据标签(索引)构成。Series 可以看作是 DataFrame 中的一列,也可以是单独存在的一维数据结构。
DataFrame:类似于一个二维表格,是 Pandas 中最重要的数据结构。DataFrame 可以看作是由多个 Series 按列排列构成的表格,它既有行索引也有列索引,因此可以方便地进行行列选择、过滤、合并等操作。


二 使用

 Series

索引:每一个Series都有一个索引,可以是整数,字符串,日期等类型,如果没有显示指定索引,Pandas会默认自动创建一个从0开始的整数索引

数据类型:Series可以容纳不同数据类型的元素,包括整数,浮点数,字符串等

# series
#创建
#可以通过pd.Series()构造器创建 也可以传递一个数据数据加一个可选的索引数组import pandas as pd
a = [1,2,3,4]
b = pd.Series(a)time = ['23年','24年','25年','26年']
date = [100,200,300,400]
c = pd.Series(date,time)
print(c)sites = {1:"0012",2:"0013",3:"0014",4:"0015"}
d = pd.Series(sites)
print(d)var = pd.Series(sites,index=[1,3]) # 按照索引去获取数组
print(var)

DataFrame

列和行:DataFrame 由多个列组成,每一列都有一个名称,可以看作一个Series 同时还存在有行索引

二维结构:DataFrame 是一个二维表格 具有行和列 可以视为多个Series对象组成的字典

列的数据类型:不同的列可以包含不同的数据类型 例如整数 浮点型 字符串

 创建方式 

import pandas as pd
# 字典嵌套列表创建
sites = {"web_name":["Google","Baidu","SH"],"age":[1,3,9]}
var = pd.DataFrame(sites)
var
import pandas as pd
# 使用Series创建
data = {"name":pd.Series(["一","二","三"]),"age":pd.Series([21,22,23]),"money":pd.Series([21.2,22.2,23.2])
}
data = pd.DataFrame(data)
data

 文件处理 

import pandas as pd
# csv数据读取
gender = pd.read_csv(r"D:\Study Note\Python_note\Pandas\gender_submission.csv")
gender
import pandas as pd
# JSON数据读取
JSON_Test = pd.read_json(r"D:\Study Note\Python_note\Pandas\test.json")
JSON_Test

 保存为文件

import pandas as pd# 数据
data = {"name":pd.Series(["张三","李四","王五"]),"age":pd.Series([21,22,23]),"money":pd.Series([21.2,22.2,23.2])
}# 将数据转换为DataFrame
data = pd.DataFrame(data)# 将DATa Frame写入Excel文件中
data.to_excel('test.xlsx',index=False)print("Excel文件生成成功")

常用函数

函数用法
pd.merge()实现数据合并
pd.concat()将多个数据框沿着某个轴进行连接
loc[]和iloc[]对数据进行索引和选择
drop()删除某些列或行
isnull()检查失值并使用
fillna()填充缺失值
sort_values()排序
import pandas as pd
df = pd.read_csv(r"D:\Study Note\Python_note\Pandas\test.csv")
# df.head()# 设置编号 方便筛查
df.set_index('PassengerId',inplace=True)# 获取单个值
a = df.loc[900,'Name']# 获取一个Series
b = df.loc[900,['Sex','Age']]# 得到DataFrame
c = df.loc[[896,897,900],["Name","Sex","Age"]]# 行列按区间查询
d = df.loc[896: 905,"Name":"Age"]# 布尔查询
f = df.loc[df["Age"] < 18,:]# 条件查询
g = df.loc[(df["Age"]<=30) & (df["Age"]>=18) & (df["Sex"] == "male"),:]# 新增列查询
h = df.loc[:,"Year"] = df["Age"] +  2025
df.head()
# 统计函数
# 查看单个Series的数据
df["Age"].mean()# 最大值
df["Age"].max()# 最小值
df["Age"].min()# 按值计数
df["Sex"].value_counts()# 去重
df["Age"].unique()# 缺失值处理
stu = pd.read_excel(r"D:\Study Note\Python_note\Pandas\test.xlsx",skiprows = 2)# 检查空值
stu.isnull()
stu["name"].notnull()# 排序
df2 = pd.read_csv(r"D:\Study Note\Python_note\Pandas\gender_submission.csv")
df2.sort_values("Age",ascending=False)

 学习时间 2025年07月12日

http://www.xdnf.cn/news/1107577.html

相关文章:

  • SQL新手入门详细教程和应用实例
  • 【MediaSoup】MS_DUMP打印转换为PLOGI的形式
  • 13. https 是绝对安全的吗
  • 二叉树算法进阶
  • Redis渗透思路总结
  • 第七章应用题
  • JVM--虚拟线程
  • Spring Boot 中使用 Lombok 进行依赖注入的示例
  • RMSNorm实现
  • linux----------------------线程同步与互斥(上)
  • linux_线程概念
  • 基于开源AI智能名片链动2+1模式S2B2C商城小程序的营销直播质量提升策略研究
  • Vue框架之钩子函数详解
  • 2025年亚太杯(中文赛项)数学建模B题【疾病的预测与大数据分析】原创论文分享
  • [爬虫实战] 多进程/多线程/协程-异步爬取豆瓣Top250
  • QML与C++相互调用函数并获得返回值
  • PID控制算法理论学习基础——单级PID控制
  • 多 Agent 强化学习实践指南(一):CTDE PPO 在合作捕食者-猎物游戏中的应用详解
  • GitHub 操作指南:项目协作与自动化工作流实践
  • 【小沐杂货铺】基于Three.JS绘制汽车展示Car(WebGL、vue、react、autoshow、提供全部源代码)
  • 【Elasticsearch】function_score与rescore
  • html-初级标签
  • 【离线数仓项目】——数据模型开发实战
  • S7-200 SMART PLC:硬件、原理及接线特点全解析
  • 别再怕 JSON!5分钟带你轻松搞懂这个程序员的好帮手
  • C#调用Matlab生成的DLL
  • C++ Map 和 Set 详解:从原理到实战应用
  • win10安装Rust Webassembly工具链(wasm-pack)报错。
  • 细谈kotlin中缀表达式
  • RISC-V:开源芯浪潮下的技术突围与职业新赛道 (四) 产业应用全景扫描