Pandas Series学习
1.Series简介
Pandas Series类似表格的列(column),类似于一维数组,可以保存任何数据类型,具有标签(索引),使得数据在处理分析时更具灵活性。Series数据结构是非常有用的,因为它可以处理各种数据类型,同时保持了高效的数据操作能力。
2.Series特点
(1)一维数组:Series是一维的,这意味着它只有一个轴(或维度),类似于 Python 中的列表。
(2)索引: 每个 Series 都有一个索引,它可以是整数、字符串、日期等类型。如果不指定索引,Pandas 将默认创建一个从 0 开始的整数索引。
(3)数据类型: Series可以容纳不同数据类型元素,包括整数、浮点数、字符串、Python 对象等。
(4)大小不变性:Series大小在创建后是不变的,但可以通过某些操作(如 append 或 delete)来改变。
(5)操作:Series支持各种操作,比如数学运算、统计分析、字符串处理等。
(6)缺失数据:Series 可以包含缺失数据,Pandas 使用NaN(Not a Number)来表示缺失或无值。
3.创建 Series
可以使用 pd.Series() 构造函数创建 Series 对象,传递数据数组(可以是列表、NumPy 数组等)和可选的索引数组。
pandas.Series(data=None, index=None, dtype=None, name=None, copy=False, fastpath=False)
(1)data:Series 的数据部分,可以是列表、数组、字典、标量值等。如果不提供此参数,则创建一个空的 Series。
(2)index:Series 的索引部分,用于对数据进行标记。可以是列表、数组、索引对象等。如果不提供此参数,则创建一个默认的整数索引。
(3)dtype:指定 Series 的数据类型。可以是 NumPy 数据类型,例如 np.int64、np.float64 等。如果不提供此参数,则根据数据自动推断数据类型。
(4)name:Series 的名称,用于标识 Series 对象。如果提供了此参数,则创建的 Series 对象将具有指定的名称。
(5)copy:是否复制数据。默认为 False,表示不复制数据。若设置为 True,则复制输入的数据。
(6)fastpath:是否启用快速路径。默认为 False。启用快速路径可能会在某些情况下提高性能。
4.指定索引值举例
import pandas as pda = ["Kalika", "KK", "Kali"]myvar = pd.Series(a, index = ["x", "y", "z"])print(myvar)

5.使用 key/value 对象类似字典举例
import pandas as pdsites = {1: "Kalika", 2: "KK", 3: "Kali"}myvar = pd.Series(sites)print(myvar)

6. 使用列表、字典、数组创建默认索引Series
import pandas as pd # 导入pandas库
import numpy as np # 导入NumPy库# 使用列表创建 Series
s = pd.Series([1, 2, 3, 4])# 使用 NumPy 数组创建 Series
s = pd.Series(np.array([1, 2, 3, 4]))# 使用字典创建 Series
s = pd.Series({'a': 1, 'b': 2, 'c': 3, 'd': 4})

7.Series基本操作
# 指定索引创建 Series
s = pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd'])# 获取值
value = s[2] # 获取索引为2的值
print(s['a']) # 返回索引标签 'a' 对应的元素# 获取多个值
subset = s[1:4] # 获取索引为1到3的值# 使用自定义索引
value = s['b'] # 获取索引为'b'的值# 索引和值的对应关系
for index, value in s.items():print(f"Index: {index}, Value: {value}")# 使用切片语法来访问 Series 的一部分
print(s['a':'c']) # 返回索引标签 'a' 到 'c' 之间的元素
print(s[:3]) # 返回前三个元素# 为特定的索引标签赋值
s['a'] = 10 # 将索引标签 'a' 对应的元素修改为 10# 通过赋值给新的索引标签来添加元素
s['e'] = 5 # 在 Series 中添加一个新的元素,索引标签为 'e'# 使用 del 删除指定索引标签的元素。
del s['a'] # 删除索引标签 'a' 对应的元素# 使用 drop 方法删除一个或多个索引标签,并返回一个新的 Series。
s_dropped = s.drop(['b']) # 返回一个删除了索引标签 'b' 的新 Series

8.Series计算统计数据
print(s.sum()) # 输出 Series 的总和
print(s.mean()) # 输出 Series 的平均值
print(s.max()) # 输出 Series 的最大值
print(s.min()) # 输出 Series 的最小值
print(s.std()) # 输出 Series 的标准差

9.Series属性和方法
# 获取索引
index = s.index# 获取值数组
values = s.values# 获取描述统计信息
stats = s.describe()# 获取最大值和最小值的索引
max_index = s.idxmax()
min_index = s.idxmin()# 其他属性和方法
print(s.dtype) # 数据类型
print(s.shape) # 形状
print(s.size) # 元素个数
print(s.head()) # 前几个元素,默认是前 5 个
print(s.tail()) # 后几个元素,默认是后 5 个
print(s.sum()) # 求和
print(s.mean()) # 平均值
print(s.std()) # 标准差
print(s.min()) # 最小值
print(s.max()) # 最大值

10.布尔表达式根据条件过滤 Series
print(s > 2) # 返回一个布尔 Series,其中的元素值大于 2

11.dtype属性查看 Series数据类型
print(s.dtype) # 输出 Series 的数据类型

12.astype 方法将 Series 转换为其他数据类型
s = s.astype('float64') # 将 Series 中的所有元素转换为 float64 类型

13.注意事项
Series的数据是有序的,可以将 Series 视为带有索引的一维数组。索引可以是唯一的,但不是必须的。数据可以是标量、列表、NumPy 数组等。如果没有指定索引,索引值就从 0 开始。
相关文章:
Pandas Series学习
1.Series简介 Pandas Series类似表格的列(column),类似于一维数组,可以保存任何数据类型,具有标签(索引),使得数据在处理分析时更具灵活性。Series数据结构是非常有用的,…...
为什么要探索太空?这对我们有什么好处?
几个世纪以来,人类一直着迷于宇宙的奥秘,这驱使我们冒险离开地球,去探索太阳系之外的未知环境。在当今世界,我们为什么要进行太空探索之旅这个问题,远不止出于单纯的好奇。 归根结底,太空探索是一种必要之…...
uniapp开发【选择地址-省市区功能】,直接套用即可
一、效果展示 二、代码 <template><view><view class="user_info"><view class="item"...
3个模型的交互式多模型IMM,基于EKF的目标跟踪实例(附MATLAB代码)
文章目录 3个模型的IMM源代码运行结果代码介绍总结 3个模型的IMM 代码实现了基于 I M M IMM IMM(Interacting Multiple Model)算法的目标跟踪。它使用三种不同的运动模型(匀速直线运动、左转弯和右转弯)来预测目标的位置&#x…...
利用游戏引擎的优势
大家好,我是小蜗牛。 在当今快速发展的游戏产业中,选择合适的游戏引擎对开发者来说至关重要。Cocos Creator作为一款功能强大且灵活的游戏引擎,为开发者提供了丰富的工具和资源,使他们能够高效地开发出优秀的游戏。本文将探讨如何…...
一致角色的视频且唇形同步中文配音和免费音效添加
现在AI可以免费生成不带水印、不限时长的视频了,并且视频里的角色可以进行唇形同步配音。最重要的是,我还会分享给大家,怎么生成角色一致的动画场景,怎么使用场景图片生成完整的视频,并且我还会介绍一款,我…...
Spring学习笔记_14——@Qualifier
Qualifier 1. 解释 当Spring中存在多个类型相同但是名称不同的Bean时,使用Autowired注解向类的构造方法、方法、参数、字段中注入Bean对象时,首先会根据Bean的类型注入,如果存在多个类型相同的Bean时,会根据Bean的名称注入&…...
高级SQL技巧详解与实例
在数据处理与分析领域,高级SQL技巧是提升效率与准确性的关键。本文将结合参考资料,对高级SQL技巧进行系统的整理与解读,并通过实例展示其应用。 一、窗口函数 窗口函数是一种在SQL中执行复杂计算的强大工具,它们允许用户在一组行…...
实现PC端和安卓手机的局域网内文件共享
文章目录 一、准备工作1.1 笔记本(Win10)的设置(主要可分为3大部分:更改共享设置、创建本地用户、选择共享文件)1.2 台式机(Win7)的设置 二、实现共享文件夹的访问2.1 笔记本(Win10)访问台式机(Win7)2.2 台式机(Win7)访问笔记本(Win10)(一定要…...
腾讯云云开发深度解读:云数据库、云模板与AI生成引用的魅力
腾讯云云开发平台为开发者和潜在用户提供了丰富的解决方案,其中的云数据库、云模板和AI生成引用等产品尤为引人注目。这篇文件是我个人对这些产品的能力、应用场景、业务价值、技术原理的介绍和深度解读,最后也简单写一下新手如何进行相关产品的初步使用…...
预览 PDF 文档
引言 在现代Web应用中,文件预览功能是非常常见的需求之一。特别是在企业级应用中,用户经常需要查看各种类型的文件,如 PDF、Word、Excel 等。本文将详细介绍如何在Vue项目中实现 PDF 文档的预览功能。 实现原理 后端API 后端需要提供一个…...
Chromium 在WebContents中添加自定义数据c++
为了能在WebContents中添加自定义数据先看下几个关键类的介绍。 一、WebContents 介绍: WebContents是content模块核心,是呈现 Web 内容(通常为 HTML)位于矩形区域中。 最直观的是一个浏览器标签对应一个WebContents,…...
【Apache Zookeeper】
一、简介 1、场景 如何让⼀个应⽤中多个独⽴的程序协同⼯作是⼀件⾮常困难的事情。开发这样的应⽤,很容易让很多开发⼈员陷⼊如何使多个程序协同⼯作的逻辑中,最后导致没有时间更好地思考和实现他们⾃⼰的应⽤程序逻辑;又或者开发⼈员对协同…...
13.音乐管理系统(基于SpringBoot + Vue)
目录 1.系统的受众说明 2 需求分析 2.1用例图及用例分析 2.1.1 用户用例图及用例分析 2.1.2 管理员用例图及用例分析 2.2 系统结构图和流程图 2.2.1 音乐播放器的系统流程图(图2.2.1-1) 2.2.2 系统功能表(表2.2.2…...
如何从iconfont中获取字体图标并应用到微信小程序中去?
下面我们一一个微信小程序的登录界面的制作为例来说明,如何从iconfont中获取字体图标是如何应用到微信小程序中去的。首先我们看效果。 这里所有的图标,都是从iconfont中以字体的形式来加载的,也就是说,我们自始至终没有使用一张…...
C语言中的位操作
第一章 变量某位赋值与连续赋值 寄存器 | 值 //例如:a 1000 0011b a | (1<<2) //a 1000 0111 b 单独赋值 a | (3<<2*2) // 1011 0011b 连续赋值 第二章 变量某位清零与连续清零 寄存器 & ~() 值 //例子:a …...
Spring之HTTP客户端--RestTemplate的使用
原文网址:Spring之HTTP客户端--RestTemplate的使用_IT利刃出鞘的博客-CSDN博客 简介 本文介绍RestTemplate的用法。RestTemplate是Spring自带的HTTP客户端,推荐使用。 项目中经常需要使用http调用第三方的服务,常用的客户端如下࿱…...
vscode和pycharm在当前工作目录的不同|python获取当前文件目录和当前工作目录
问题背景 相信大家都遇到过一个问题:一个项目在vscode(或pycharm)明明可以正常运行,但当在pycharm(或vscode)中时,却经常会出现路径错误。起初,对于这个问题,我也是一知…...
速盾:海外高防CDN有哪些优势?
海外高防CDN(Content Delivery Network)是一种通过部署分布式节点服务器来加速网站内容分发的技术,它能够提供更快速、稳定、安全的网站访问体验。相比于传统的CDN服务,海外高防CDN具有以下几个优势: 全球分布…...
OpenCV视觉分析之目标跟踪(4)目标跟踪类TrackerDaSiamRPN的使用
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 cv::TrackerDaSiamRPN 是 OpenCV 中用于目标跟踪的一个类,它实现了 DaSiam RPN(Deformable Siamese Region Proposal Net…...
观成科技:隐蔽隧道工具Ligolo-ng加密流量分析
1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...
Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...
