Python的Pandas--Series的创建和实现

1.Series函数的格式:

pandas.Series(data,index,dtype,name,copy)

data:一组数据(ndarray类型、list、dict等类)或标量值

index:数据索引标签。如果不指定,默认为整数,从0开始

dtype:数据类型,默认会自己判断

name:设置的名称

copy:拷贝数据,默认为False

# 创建Series对象
import pandas as pd
import numpy as np
pd1 = pd.Series([100,200,300,400])
pd2 = pd.Series((100,200,300,400))
pd3 = pd.Series(np.array((100,200,300,400)))
print("pd1:")
print(pd1)
print("pd1的数据类型是:",type(pd1))
print("pd2:")
print(pd2)
print("pd2的数据类型是:",type(pd1))
print("pd3:")
print(pd3)
print("pd3的数据类型是:",type(pd1))

pd1从列表生成

pd2从元组生成

pd3从Numpy的数组生成

在Series函数中,五个参数中必须有data(一组数据)参数,不写index默认为整数,从0开始,dtype默认会自己判断可写可不写,name设置的名称可省略,copy拷贝的数据 默认为False

注意:Series中的索引值可以是重复的

# Series对象的索引
import pandas as pd
import numpy as np
value = ["name","sex","score","class"]
print("--------ds1--------")
ds1 = pd.Series(value)
print(ds1)
print("--------ds2--------")
ds2 = pd.Series(value,[10,20,30,40])
print(ds2)
print("--------ds3--------")
index = ["name","sex","score","class"]
ds3 = pd.Series(value,index)
print(ds3)
print("--------ds4--------")
ds4 = pd.Series({'a':10,'b':20,'c':30,'d':40})
print(ds4)
print("--------ds5--------")
ds5 = pd.Series(5,index = [0,1,2,3])
print(ds5)

ds1是默认索引

ds2是显性整数索引

ds3是显性命名索引

ds4通过字典类型创建,键就是索引的名字

ds5通过标量创建,此时必须给出索引,通过索引确定大小

2.Series的values和indexs的属性

Series是由一组数据values和索引index组成,因此Series对象最重要的两个对象是数据values和索引index。可查看访问这两个对象,可对index对象重新赋值以重新建立索引,但是不能对values重新赋值

# Series对象的values和index
import pandas as pd
import numpy as np
value = ["zs","male",80,"class1"]
index = ['name','sex','score','class']
ds = pd.Series(value,index)
print("Series对象的values和index的属性访问")
print("ds的values:",ds.values)
print("ds的index:",ds.index)
print("Series对象的values和index的重新赋值")
ds.index = ['姓名','性别','成绩','年龄']
print(ds)

3.Series对象的索引

Series是由一组数据values和索引index组成,通过index可以访问对象的value

Series非常像ndarray,意味着可以采用NumPy中的一维数组操作类似的索引操作:单值元素索引和切片。如果显式给出了索引名称,也可以像字典那样通过“键”来访问对应的值

默认索引:只能通过默认整数下标访问和切片(不能是负值索引)

显式名称索引:既可以通过默认整数下标访问和切片(可以像列表那样使用负值索引),也可以通过“键”名称访问和切片

显式整数索引:只能通过指定整数下标访问元素,通过隐式整数索引(不能是负值索引)进行切片

# Series对象的索引
import pandas as pd
import numpy as np
x = pd.Series([10,20,30,40])
# 默认索引下标索引
y = pd.Series([10,20,30,40],index = ['a','b','c','d'])
# 显式名称索引下标索引
z = pd.Series([10,20,30,40],index = [100,200,300,400])
# 显式整数索引下标索引
print("x[1]=",x[1])
print("x[0:2]=",x[0:2])
print("y['b']=",y['b'])
print("y['a':'c'] =",y['a':'c'])
print("z[200]=",z[200])
print("z[0:2]=",z[0:2])

4.Series的运算和操作

NumPy中的数组运算,在Series中都保留了,都可以使用,并且Series进行数组运算的时候,索引与值之间的映射关系不会发生改变。也就是说,在操作Series的时候,基本上可以吧Series看成NumPy中的ndarray数组来进行操作。ndarray数组的绝大多数操作都可以在Series上应用

import pandas as pd
import numpy as np
x = pd.Series([10,20,5,13]) 
#默认整数下标索引
m = x>20
n = x[x>10]
p = x*10
q = np.max(x)
print("x>20:",m)
print("x[x>10]:",n)
print("x*10:",p)
print("np.max(x):",q)

Series和ndarray之间的主要区别是,Series上的操作会根据索引自动对齐数据。因此,可以不考虑所涉及的Series的数据对齐

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/65272.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用Gurobi追溯模型不可行原因的四种方案及详细案例

文章目录 1. 引言2. 追溯不可行集的四种方法2.1 通过约束增减进行判断2.2 通过computeIIS函数获得冲突集2.3 利用 feasRelaxS() 或 feasRelax() 函数辅助排查2.4 利用 IIS Force 属性1. 引言 模型不可行是一个让工程师头疼的问题,对于复杂模型而言,导致模型不可行的原因可能…

MySQL和HBase的对比

Mysql :关系型数据库,主要面向 OLTP ,支持事务,支持二级索引,支持 sql ,支持主从、 Group Replication 架构模型(此处以 Innodb 为例,不涉及别的存储引擎)。 HBase &am…

mybatis-plus自动填充时间的配置类实现

mybatis-plus自动填充时间的配置类实现 在实际操作过程中,我们并不希望创建时间、修改时间这些来手动进行,而是希望通过自动化来完成,而mybatis-plus则也提供了自动填充功能来实现这一操作,接下来,就来了解一下mybatis…

【软件工程】十万字知识点梳理 | 期末复习专用

原创文章,禁止转载。 文章目录 图CRC卡片用例图类图状态图活动图泳道图软件质量因素自顶向下集成自底向上集成人员与工作量之间的关系时序图关键路径软件结构基本路径测试判定表数据流图(DFD)体系结构设计问题数据字典挣值分析等价划分程序流程图PAD | N-S燃尽图甘特图对象模…

STM32完全学习——FLASH上FATFS文件管理系统

一、需要移植的接口 我们通过看官网的手册,可以看到我们只要完成下面函数的实现,就可以完成移植。我们这里只移植前5个函数,获取时间的函数我们不在这里移植。 二、移植接口函数 DSTATUS disk_status (BYTE pdrv /* Physical drive nmuber…

Redis - Token JWT 概念解析及双token实现分布式session存储实战

Token 定义:令牌,访问资源接口(API)时所需要的资源凭证 一、Access Token 定义:访问资源接口(API)时所需要的资源凭证,存储在客户端 组成 组成部分说明uid用户唯一的身份标识time…

软体机器人研究报告:设计方法、材料与驱动、感知与控制

软体机器人因其出色的可变形性和高适应性受到了广泛关注,这些特性使其在医疗、救援、探测等复杂场景中展现出独特的优势和巨大的应用潜力。研究人员对软体机器人的设计方法、材料与驱动技术、感知与控制策略等方面进行深入研究,取得了一系列成果。 本文汇…

imgproxy图像处理的高效与安全

摘要 imgproxy作为一个高效且安全的独立服务器,为图像处理提供了全新的解决方案。它不仅简化了图像调整和转换的过程,还极大地提升了处理速度,确保了整个流程的安全性。通过集成imgproxy,用户可以轻松优化网页上的图像,提高加载速度,改善用户体验。本文将深入探讨imgpro…

要查询 `user` 表中 `we_chat_subscribe` 和 `we_chat_union_id` 列不为空的用户数量

文章目录 1、we_chat_subscribe2、we_chat_union_id 1、we_chat_subscribe 要查询 user 表中 we_chat_subscribe 列不为空的用户数量,你可以使用以下 SQL 查询语句: SELECT COUNT(*) FROM user WHERE we_chat_subscribe IS NOT NULL;解释: …

RTMW:实时多人2D和3D 全人体姿态估计

单位:上海AI实验室 代码:mmpose/tree/main/projects/rtmpose 系列文章目录 RTMO: 面向高性能单阶段的实时多人姿态估计 目录 系列文章目录摘要一、背景二、相关工作2.1 自上而下的方法。2.2 坐标分类。2.3 3D Pose 3 实验方法3.1.1 任务限制3.1.3训练技…

香橙派5Plus启动报错bug: spinlock bad magic on cpu#6, systemd-udevd/443

一、问题 如图: 接上调试串口,每次启动都会报错。不过使用过程中没有发现有什么影响。 百度查阅,有一位博主提到,但是没有细说解决方案: spinlock变量没有初始化_spinlock bad magic on-CSDN博客https://blog.csdn.n…

FPGA自学之路:到底有多崎岖?

FPGA,即现场可编程门阵列,被誉为硬件世界的“瑞士军刀”,其灵活性和可编程性让无数开发者为之倾倒。但谈及FPGA的学习难度,不少人望而却步。那么,FPGA自学之路到底有多崎岖呢? 几座大山那么高?…

【KLEE】源码阅读笔记----KLEE执行流程

本文架构 1. 动机2.KLEE简介3.KLEE的代码工程结构4. 从KLEE主函数入手main函数step1: 初始化step2:加载.bc文件进行符号执行 读取测试用例输出日志信息 1. 动机 最近准备对KLEE进行修改使其符合我的需要,因此免不了需要对源码进行修改。读懂源码是对在其…

CS 144 check7: putting it all together

Exercises 经验:两边的TCP连接建立得尽快,如果服务器端启动了,客户端没有紧接着启动就连不上。 这是什么神奇的bug呢? 和我之前给域控刷SOC的版本一样。如果域控启动了,在我本地的电脑没有马上和域控的SOC通上信&…

Suno Api V4模型无水印开发「综合实战开发自己的音乐网站」 —— 「Suno Api系列」第14篇

历史文章 Suno AI API接入 - 将AI音乐接入到自己的产品中,支持120并发任务 Suno Api V4模型无水印开发「灵感模式」 —— 「Suno Api系列」第1篇 Suno Api V4模型无水印开发「自定义模式」 —— 「Suno Api系列」第2篇 Suno Api V4模型无水印开发「AI生成歌词」…

【物联网技术与应用】实验15:电位器传感器实验

实验15 电位器传感器实验 【实验介绍】 电位器可以帮助控制Arduino板上的LED闪烁的时间间隔。 【实验组件】 ● Arduino Uno主板* 1 ● 电位器模块* 1 ● USB电缆*1 ● 面包板* 1 ● 9V方型电池* 1 ● 跳线若干 【实验原理】 模拟电位器是模拟电子元件,模…

【YOLO】(基础篇一)YOLO介绍

YOLO YOLO(You Only Look Once)是一种用于实时物体检测的算法,由Joseph Redmon等人提出。它能够同时进行物体分类和定位,并且因其速度和效率而广受赞誉。 工作原理 假设我们要对这张猫的图片完成目标检测,需要框选出…

Linux-----进程处理(文件IO资源使用)

下面代码是通过父进程和子进程对同一个文件IO资源进行操作,父进程和子进程都对这个进程进行写入操作,我们都知道这两个进程实际上是并发的,所以需要一个同步机制来去操作同一个资源(后面再深入去说明同步的api,这里使用…

golang标准库SSH操作示例

文章目录 前言一、了解SSH二、重要知识点1.安装ssh库2.ssh库重要知识牢记 三、模拟连接远程服务器并执行命令四、SSH与os/exec标准库下执行命令的几种方式对比五、SSH库下三种执行命令方式演示5.1. session.CombinedOutput()示例5.2. session.Run()示例5.3. session.Start()、s…

替代传统FTP传输,镭速大数据传输系统实现安全高效数据流转!

信息技术的快速进步让大数据成为了企业决策的关键支撑,但同时也带来了巨大的挑战。企业在运营过程中产生的数据量急剧增加,这对数据传输的速度、安全性和效率提出了更高的要求。然而,传统的FTP传输方式在处理大规模数据时显得力不从心&#x…