【Pandas】数据分析预备

2024-09-06 05:12
文章标签 pandas 数据分析 预备

本文主要是介绍【Pandas】数据分析预备,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Pandas

构建在NumPy之上,继承了NumPy高性能的数组计算功能,同时提供更多复杂精细的数据处理功能

  • 安装
    pip install pandas
  • 导入
import pandas as pd

Series

键值对列表

# 创建Series
s1 = pd.Series([5, 17, 3, 26, 31])
s1

0 5
1 17
2 3
3 26
4 31
dtype: int64

# 获得Series的元素和索引
s1.values

array([ 5, 17, 3, 26, 31])

s1.index

RangeIndex(start=0, stop=5, step=1)

# 索引和切片操作
print(s1[2])
print(s1[1:3])

3
1 17
2 3
dtype: int64

#既可以用标签索引也可以用位置索引
s1 = pd.Series([5, 17, 3, 26, 31], index=["a","d","b","c","e"])
print(s1)
print(s1["b"])
print(s1[1])

a 5
d 17
b 3
c 26
e 31
dtype: int64
3
17

# 标签索引切片包含结束值
s1["d":"c"]

d 17
b 3
c 26
dtype: int64

# 用索引获得任意元素
s1[["a","e","c"]]

a 5
e 31
c 26
dtype: int64

# loc:用标签索引 iloc:用位置索引
s2 = pd.Series([5,17,3,26,31], index=[1,3,5,7,9])
print(s2.loc[3])
print(s2.iloc[3])print(s2.loc[1:3]) #包括结束
print(s2.iloc[1:3]) #不包括结束位置

17
26
1 5
3 17
dtype: int64
3 17
5 3
dtype: int64

# 创建Series的另一种方式
s3 = pd.Series({"qc":4.1,"blb":2.2,"xhs":5.3,"td":3.7,"hg":6.8})
s3

qc 4.1
blb 2.2
xhs 5.3
td 3.7
hg 6.8
dtype: float64

# 查看标签是否存在
"qc" in s3
# 可以根据条件筛选
s3[(s3>5)&(s3<6)]
# 计算操作索引自动对齐,缺失值用0代替
s1.add(s2, fill_value=0)
# 统计信息
s1.describe()

count 5.000000
mean 16.400000
std 12.401613
min 3.000000
25% 5.000000
50% 17.000000
75% 26.000000
max 31.000000
dtype: float64

# 对元素分别操作
# 使用函数作为参数,不改变原始Series,返回新Series
# grades = scores.apply(get_grade_from_score)

Dataframe

数据表格,可以看成由Series组成的字典

  • 创建:值是Series或列表,列是各个Series对应的列名
df4 = pd.DataFrame({"学号":{"小明":"01","小红":"02","小杰":"03"}, "班级":{"小明":"二班","小红":"一班","小杰":"二班"},"成绩":{"小明":92,"小红":67,"小杰":70}})
df4

在这里插入图片描述

df4.index #获取索引
df4.columns #获取列名
df4.values #获取值(返回NumPy数组)
# 转置
df4.T
df4["班级"]

小明 二班
小红 一班
小杰 二班
Name: 班级, dtype: object

df4.班级  #列名也是dataFrame的属性,特殊符号不适用

小明 二班
小红 一班
小杰 二班
Name: 班级, dtype: object

df4[["学号", "成绩"]]
df4.loc["小红"]

学号 02
班级 一班
成绩 67
Name: 小红, dtype: object

df4.loc["小红","成绩"]

np.int64(67)

df4.loc[:,"成绩"]
df4[df4.成绩 > 67]
# 返回前5行  df4.head()
df4.head(2)# 对列赋值:更新或者增加列值
df4["成绩"] = pd.Series([88, 77, 66], index=["小明","小红","小杰"])
df4["性别"] = ["男", "女", "男"]
df4# 对行用loc
df4.loc["小虎"] = ["04", "三班", 99, "男"]
df4df4.drop(["小明", "小虎"]) # 删除行df4.drop("班级", axis=1) # 删除列 axis=1横向依次(判断)操作# df1.mean(axis=1) # 对行求平均值# df1.apply(函数)# 将函数用在每列
# df1.applymap(function) # 用在每个元素
# 原始df并不改变df4.describe() # 忽略非数字列

这篇关于【Pandas】数据分析预备的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1141091

相关文章

pandas数据过滤

Pandas 数据过滤方法 Pandas 提供了多种方法来过滤数据,可以根据不同的条件进行筛选。以下是一些常见的 Pandas 数据过滤方法,结合实例进行讲解,希望能帮你快速理解。 1. 基于条件筛选行 可以使用布尔索引来根据条件过滤行。 import pandas as pd# 创建示例数据data = {'Name': ['Alice', 'Bob', 'Charlie', 'Dav

Python:豆瓣电影商业数据分析-爬取全数据【附带爬虫豆瓣,数据处理过程,数据分析,可视化,以及完整PPT报告】

**爬取豆瓣电影信息,分析近年电影行业的发展情况** 本文是完整的数据分析展现,代码有完整版,包含豆瓣电影爬取的具体方式【附带爬虫豆瓣,数据处理过程,数据分析,可视化,以及完整PPT报告】   最近MBA在学习《商业数据分析》,大实训作业给了数据要进行数据分析,所以先拿豆瓣电影练练手,网络上爬取豆瓣电影TOP250较多,但对于豆瓣电影全数据的爬取教程很少,所以我自己做一版。 目

【Python从入门到进阶】64、Pandas如何实现数据的Concat合并

接上篇《63.Pandas如何实现数据的Merge》 上一篇我们学习了Pandas如何实现数据的Merge,本篇我们来继续学习Pandas如何实现数据的Concat合并。 一、引言 在数据处理过程中,经常需要将多个数据集合并为一个统一的数据集,以便进行进一步的分析或建模。这种需求在多种场景下都非常常见,比如合并不同来源的数据集以获取更全面的信息、将时间序列数据按时间顺序拼接起来以观察长期趋势等

图神经网络(2)预备知识

1. 图的基本概念         对于接触过数据结构和算法的读者来说,图并不是一个陌生的概念。一个图由一些顶点也称为节点和连接这些顶点的边组成。给定一个图G=(V,E),  其 中V={V1,V2,…,Vn}  是一个具有 n 个顶点的集合。 1.1邻接矩阵         我们用邻接矩阵A∈Rn×n表示顶点之间的连接关系。 如果顶点 vi和vj之间有连接,就表示(vi,vj)  组成了

win7下安装Canopy(EPD) 及 Pandas进行python数据分析

先安装好canopy,具体安装版本看自己需要那种,我本来是打算安装win764位的,却发现下载总是出现错误,无奈只能下载了32位的! https://store.enthought.com/downloads/#default 安装好之后,参考如下连接,进行检验: 之后再根据下面提供的连接进行操作,一般是没问题的! http://jingyan.baidu.com/article/5d6

Java预备知识 - day2

1.IDEA的简单使用与介绍 1.1 IDEA的项目工程介绍 Day2_0904:项目名称 E:\0_code\Day2_0904:表示当前项目所在路径 .idea:idea软件自动生成的文件夹,最好不要动 src:src==sourse→源,我们的源代码就放在这个文件夹之内 Day2_0904.iml:也是自动生成的文件,不要动 External Libraries:外部库 我这

「大数据分析」图形可视化,如何选择大数据可视化图形?

​图形可视化技术,在大数据分析中,是一个非常重要的关键部分。我们前期通过数据获取,数据处理,数据分析,得出结果,这些过程都是比较抽象的。如果是非数据分析专业人员,很难清楚我们这些工作,到底做了些什么事情。即使是专业人员,在不清楚项目,不了解业务规则,不熟悉技术细节的情况下。要搞清楚我们的大数据分析,这一系列过程,也是比较困难的。 我们在数据处理和分析完成后,一般来说,都需要形成结论报告。怎样让大

11Python的Pandas:可视化

Pandas本身并没有直接的可视化功能,但它与其他Python库(如Matplotlib和Seaborn)无缝集成,允许你快速创建各种图表和可视化。这里是一些使用Pandas数据进行可视化的常见方法: 1. 使用Matplotlib Pandas中的plot()方法实际上是基于Matplotlib的,你可以使用它来绘制各种基本图表,例如折线图、柱状图、散点图等。 import pandas

jupyter在加载pkl文件时报错ModuleNotFoundError: No module named 'pandas.core.internals.managers'; '的解决方法

笔者当看到这个错误的时候一脸懵逼,在pycharm上正常运行的code 放在jupyter就不成了,于是就研究一翻。 一开始以为自己的pkl文件有问题,研究重点放在这里,最后发现不是。 然后取搜索pycharm和jupyter下的python的\Lib\site-packages\pandas\core\internals有什么不同 发现jupyter下没有pandas\core\intern

结合Python与GUI实现比赛预测与游戏数据分析

在现代软件开发中,用户界面设计和数据处理紧密结合,以提升用户体验和功能性。本篇博客将基于Python代码和相关数据分析进行讨论,尤其是如何通过PyQt5等图形界面库实现交互式功能。同时,我们将探讨如何通过嵌入式预测模型为用户提供赛果预测服务。 本文的主要内容包括: 基于PyQt5的图形用户界面设计。结合数据进行比赛预测。文件处理和数据分析流程。 1. PyQt5 图形用户界面设计