Python之Pandas中Series、DataFrame实践

简介: Python之Pandas中Series、DataFrame实践1. pandas的数据结构Series1.1 Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。1.2 Series的字符串表现形式为:索引在左边,值在右边。2. pandas的数据结构DataFrame是一个表格型的

Python之Pandas中Series、DataFrame实践

1. pandas的数据结构Series

1.1 Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。
1.2 Series的字符串表现形式为:索引在左边,值在右边。

2. pandas的数据结构DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔值的)。

dataframe中的数据是以一个或者多个二位块存放的(而不是列表、字典或者别的一维数据结构)。

3.索引对象

pandas的索引对象负责管理轴标签和其他元素(比如轴名称等)。构建Series或DataFrame时,所用到的任何数组或其他序列的标签都会被转换成一个Index。
Index对象是不可修改的。

4. pandas的主要Index对象

Index       最泛化的Index对象,将轴标签表示为一个由Python对象组成的NumPy数组
Int64Index  针对整数的特殊Index
MultiIndex  “层次化”索引对象,表示单个轴上的多层索引。可以看做由元数组组成的数组
DatetimeIndex   存储纳秒级时间戳(用NumPy的datetime64类型表示)
PeriodIndex 针对Period数据(时间间隔)的特殊Index

5. 操作Series和DataFrame中的数据的基本手段

5.1 重新索引 reindex
5.2 丢弃指定轴上的项 drop
5.3 索引、选取和过滤(.ix)
5.4 算数运算和数据对齐
    DataFrame和Series之间的算数运算默认情况下会将Series的索引项 匹配到DataFrame的列,然后沿着行一直向下广播。(如果希望匹配行且在列上广播,则必须使用算数运算方法)

6. 函数应用和映射

NumPy的ufuncs(元素级数组方法)也可用操作pandas对象
DataFrame中将函数应用到由各列或各行所行成的一维数组上可用apply方法。

7. 排序和排名

要对行或列索引进行排序(按字典顺序),可使用sort_index方法,它将返回一个已排序的新对象;对于DataFrame,则可以根据任意一个轴上的索引进行排序。

8. 汇总和计算描述统计

8.1 相关系数corr与协方差cov
8.2 成员资格isin,用于判断矢量化集合的成员资格,可用于选取Series或DataFrame列数据的子集。

9. 处理缺失数据(Missing data)

9.1 pandas使用浮点值NaN(Not a Number)表示浮点和非浮点数组中的缺失数据。
9.2 NA处理办法
    dropna      根据各标签值中是否存在缺失数据对轴标签进行过滤,可通过阀值调节对缺失值的容忍度
    fillna      用指定的或插值方法(如ffil或bfill)填充缺失数据
    isnull      返回一个含有布尔值的对象,这些布尔值表示哪些值是缺失值/NA,该对象的类型与源类型一样
    notnull     isnull的否定式

10. 层次化索引

层次化索引(hierarchical indexing)是pandas的一项重要功能,它使你能在一个轴上拥有多个(两个以上)索引级别。抽象点说,它是你能以低维度形式处理高维度数据。
目录
相关文章
|
28天前
|
数据格式 Python
如何使用Python的Pandas库进行数据透视图(melt/cast)操作?
Pandas的`melt()`和`pivot()`函数用于数据透视。基本步骤:导入pandas,创建DataFrame,然后使用这两个函数转换数据格式。示例代码展示了如何通过`melt()`转为长格式,再用`pivot()`恢复为宽格式。输入数据是包含'Name'和'Age'列的DataFrame,最终结果经过转换后呈现出不同的布局。
39 6
|
28天前
|
数据挖掘 数据处理 索引
如何使用Python的Pandas库进行数据筛选和过滤?
Pandas是Python数据分析的核心库,其DataFrame数据结构便于数据操作。筛选与过滤数据主要包括:导入pandas,创建DataFrame,通过布尔索引、`query()`或`loc[]`、`iloc[]`方法筛选。
|
25天前
|
BI 数据处理 索引
Pandas基本操作:Series和DataFrame(Python)
Pandas基本操作:Series和DataFrame(Python)
95 1
|
3天前
|
存储 数据挖掘 数据处理
Pandas数据结构详解:Series与DataFrame的奥秘
【4月更文挑战第16天】Pandas的Series和DataFrame是数据处理的核心工具。Series是一维标签化数组,支持各种数据类型,可通过索引便捷访问。DataFrame是二维表格型数据结构,适合存储和操作表格数据。两者提供丰富的统计方法和操作,如筛选、排序、分组聚合。它们之间可相互转换和交互,助力高效的数据分析。理解和掌握Series和DataFrame对于数据科学至关重要。
|
7天前
|
开发者 索引 Python
实践:如何使用python在网页的表格里抓取信息
实践:如何使用python在网页的表格里抓取信息
|
25天前
|
数据采集 存储 Web App开发
一键实现数据采集和存储:Python爬虫、Pandas和Excel的应用技巧
一键实现数据采集和存储:Python爬虫、Pandas和Excel的应用技巧
|
25天前
|
数据可视化 数据挖掘 Python
Python中的数据可视化工具Matplotlib简介与实践
在本文中,我们将介绍Python中常用的数据可视化工具Matplotlib,包括其基本概念、常用功能以及实际应用。通过学习Matplotlib,读者可以更好地理解和运用数据可视化技术,提升数据分析与展示的能力。
|
27天前
|
运维 安全 网络安全
Python灰帽子网络安全实践
旨在降低网络防范黑客的入门门槛,适合所有中小企业和传统企业。罗列常见的攻击手段和防范方法,让网站管理人员都具备基本的保护能力。Python 编程的简单实现,让网络运维变得更简单。各种黑客工具的理论和原理解剖,让人知其然更知道防范于未来。涉及互联网和局域网,让企业级网管工作更轻松。涵盖Linux&Windows 的知识点。
14 1
|
机器学习/深度学习 人工智能 Python
|
8天前
|
安全 Java 数据处理
Python网络编程基础(Socket编程)多线程/多进程服务器编程
【4月更文挑战第11天】在网络编程中,随着客户端数量的增加,服务器的处理能力成为了一个重要的考量因素。为了处理多个客户端的并发请求,我们通常需要采用多线程或多进程的方式。在本章中,我们将探讨多线程/多进程服务器编程的概念,并通过一个多线程服务器的示例来演示其实现。