Python数据分析系列(五):python数据结构 — Pandas中的Series使用

文章目录

  • 前言
  • 一、Series创建与属性
  • 二、Series的索引
  • 三、Series的基本运算
  • 四、Series的数据对齐
  • 五、Series操作
    • 1、判断是否是唯一值
    • 2、判断值
    • 3、值计数
    • 4、缺失值处理
      • 1、滤除缺失数据
      • 2、填充缺失数据
    • 5、日期时间列中提取月份和年份


前言

Pandas 是基于 NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。其中Series和DataFrame是两种最主要的数据结构,本文主要介绍Series的使用。


一、Series创建与属性

  • 基本特征:
    • 类似一维数组的对象
    • 由数据和索引组成
  • 属性:
    • 索引(index):对应是最左侧那一列。
    • 数据(values):每一个索引的右侧对应一个值。
    • name:Series对象及其索引(index)都有一个name属性。

示例1:

import pandas as pd
aSeries=pd.Series([1,2,'a'])
aSeries
# 输出:
# 0    1
# 1    2
# 2    a
# dtype: object

Series字符串表现形式为:索引在左边,值在右边。

示例2:自定义Series的index。

import pandas as pd
aSeries=pd.Series(['apple','orange','lemon'],index=[1,2,3])
aSeries
# 输出:
# 1     apple
# 2    orange
# 3     lemon
# dtype: objectaSeries.index
# 输出:
# Int64Index([1, 2, 3], dtype='int64')aSeries.index=[4,5,6] #Series索引可以通过赋值的方式就地修改
aSeries
# 输出:
# 4     apple
# 5    orange
# 6     lemon
# dtype: objectaSeries.values
# 输出:
# array(['apple', 'orange', 'lemon'], dtype=object)

示例3:如果数据被存放在一个python字典中,也可以直接通过这个字典来创建Series。

import numpy as np
data={'apple':'8.4','orange':'7','lemon':'4'} 
aSeries=pd.Series(data)
aSeries
# 输出:
# apple     8.4
# orange      7
# lemon       4
# dtype: object

示例4:Series及其索引(index)的name属性

import pandas as pd
aSeries=pd.Series(['apple','orange','lemon'],index=[1,2,3])
aSeries.name="price"
aSeries.index.name="id"
aSeries
# 输出:
# id
# 1     apple
# 2    orange
# 3     lemon
# Name: price, dtype: object

二、Series的索引

示例1:索引单个值

import pandas as pd
aSeries=pd.Series(['apple','orange','lemon'],index=['a','b','c'])
aSeries['a']
# 输出:
# 'apple'aSeries['c']='peach' #Series索引对应的数据可以通过赋值的方式就地修改
aSeries
# 输出:
# a     apple
# b    orange
# c     peach
# dtype: object

示例2:索引一组值

import pandas as pd
aSeries=pd.Series(['apple','orange','lemon'],index=['a','b','c'])
aSeries[['c','a']]
# 输出:
# c    peach
# a    apple
# dtype: object

示例3:层次化索引

import pandas as pd
aSeries= pd.Series(np.random.randn(10),index

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

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

相关文章

ChatGPT 记忆功能上线 能记住你和GPT互动的所有内容

你和ChatGPT的互动从今天开始变得更加智能!ChatGPT现在可以记住你的偏好和对话细节,为你提供更加相关的回应。和它聊天,你可以教它记住新的东西,例如:“记住我是素食主义者,当你推荐食谱时。”想了解ChatGP…

【15】Head First Java 学习笔记

HeadFirst Java 本人有C语言基础,通过阅读Java廖雪峰网站,简单速成了java,但对其中一些入门概念有所疏漏,阅读本书以弥补。 第一章 Java入门 第二章 面向对象 第三章 变量 第四章 方法操作实例变量 第五章 程序实战 第六章 Java…

Java基于微信小程序+uniapp的校园失物招领小程序(V3.0)

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…

微软如何打造数字零售力航母系列科普06 - 如何使用微软的Copilot人工智能

如何使用微软的Copilot人工智能? Copilot和ChatGPT有很多相似之处,但微软的聊天机器人本身就有一定的优势。以下是如何对其进行旋转,并查看其最引人注目的功能。 ​​​​​​​ (资料来源:Lance Whitney/微软&…

NLP 笔记:TF-IDF

TF-IDF(Term Frequency-Inverse Document Frequency,词频-逆文档频率)是一种用于信息检索和文本挖掘的统计方法,用来评估一个词在一组文档中的重要性。TF-IDF的基本思想是,如果某个词在一篇文档中出现频率高&#xff0…

使用c++类模板和迭代器进行List模拟实现

List 一、创建节点结构二、创建迭代器类1、类的结构2、一系列的运算符重载 三、创建list1、细节把握2、迭代器函数3、构造函数和析构函数4、增删查改的成员函数 一、创建节点结构 template <class T>//节点结构 struct ListNode {ListNode<T>* _next;ListNode<…

HTML_CSS学习:CSS的编写位置

一、位置_行内样式 相关代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>位置_行内样式</title> </head> <body> <!-- 行内样式&#xff1a;写在标签Style…

Springboot+vue+小程序+基于微信小程序的在线学习平台

一、项目介绍    基于Spring BootVue小程序的在线学习平台从实际情况出发&#xff0c;结合当前年轻人的学习环境喜好来开发。基于Spring BootVue小程序的在线学习平台在语言上使用Java语言进行开发&#xff0c;在数据库存储方面使用的MySQL数据库&#xff0c;开发工具是IDEA。…

APScheduler定时器使用:django中使用apscheduler,使用mysql做存储后端

一、基本环境 python版本&#xff1a;3.8.5 APScheduler3.10.4 Django3.2.7 djangorestframework3.15.1 SQLAlchemy2.0.29 PyMySQL1.1.0二、django基本设置 2.1、新增一个app 该app用来写apscheduler相关的代码 python manage.py startapp gs_scheduler 2.2、修改配置文件s…

关于NPM的Registry(npm源)

查看当前npm源&#xff1a; npm config get registry 官方源和淘宝源&#xff1a; ①官方源&#xff1a; npm config set registryhttp://registry.npmjs.org ②淘宝源&#xff1a; npm config set registryhttps://registry.npmmirror.com 据了解&#xff1a; 淘宝以前的源…

Ollamallama

Olllama 直接下载ollama程序&#xff0c;安装后可在cmd里直接运行大模型&#xff1b; llama 3 meta 开源的最新llama大模型&#xff1b; 下载运行 1 ollama ollama run llama3 2 github 下载仓库&#xff0c;需要linux环境&#xff0c;windows可使用wsl&#xff1b; 接…

C++浮点数format时的舍入问题

C浮点数format时的舍入问题 首先有这样一段代码&#xff1a; #include <iostream> #include <stdio.h> using namespace std;int main() {cout << " main begin : " << endl;printf("%.0f \r\n", 1.5);printf("%.0f \r\n&…

吴恩达2022机器学习专项课程(一)8.2 解决过拟合

目录 解决过拟合&#xff08;一&#xff09;&#xff1a;增加数据解决过拟合&#xff08;二&#xff09;&#xff1a;减少特征特征选择缺点 解决过拟合&#xff08;三&#xff09;&#xff1a;正则化总结 解决过拟合&#xff08;一&#xff09;&#xff1a;增加数据 收集更多训…

JAVA学习.Java异步任务.Futire与CompletableFuture

在Java中&#xff0c;异步任务可以通过Future和CompletableFuture来实现。 1. Future: - Future是在Java 5中引入的&#xff0c;用于表示异步计算的结果。 - 通过submit方法将任务提交给ExecutorService后&#xff0c;会返回一个Future对象&#xff0c;通过该对象可以获取任…

【c++】模板编程解密:C++中的特化、实例化和分离编译

&#x1f525;个人主页&#xff1a;Quitecoder &#x1f525;专栏&#xff1a;c笔记仓 朋友们大家好&#xff0c;本篇文章我们来学习模版的进阶部分 目录 1.非类型模版参数按需实例化 2.模版的特化函数模版特化函数模版的特化类模版全特化偏特化 3.分离编译模版分离编译 1.非类…

综合性练习(后端代码练习4)——图书管理系统

目录 一、准备工作 二、约定前后端交互接口 1、需求分析 2、接口定义 &#xff08;1&#xff09;登录接口 &#xff08;2&#xff09;图书列表接口 三、服务器代码 &#xff08;1&#xff09;创建一个UserController类&#xff0c;实现登录验证接口 &#xff…

网络应用层之(6)L2TP协议详解

网络应用层之(6)L2TP协议 Author: Once Day Date: 2024年5月1日 一位热衷于Linux学习和开发的菜鸟&#xff0c;试图谱写一场冒险之旅&#xff0c;也许终点只是一场白日梦… 漫漫长路&#xff0c;有人对你微笑过嘛… 全系列文档可参考专栏&#xff1a;通信网络技术_Once-Day的…

Apollo Dreamview+之播放离线数据包

前提条件 完成 Dreamview 插件安装&#xff0c;参见 Studio 插件安装 。 操作步骤 您可以通过包管理和源码两种方式快速体验离线数据包播放操作。其中进入 docker 环境和启动 dreamview 的命令有所区别&#xff0c;请您按照命令进行操作。 步骤一&#xff1a;启动并打开 Dr…

C++学习第十四课:运算符类型与运算符重载

C学习第十四课&#xff1a;运算符类型与运算符重载 在C中&#xff0c;运算符重载是一种使得自定义类型&#xff08;如类对象&#xff09;能够使用C内建运算符的能力。运算符重载允许程序员定义运算符对用户定义类型的特殊行为&#xff0c;这增加了程序的可读性和自然表达能力。…

PaLmTac嵌入软体手手掌的视触觉传感器

触觉是感知和操作之间的桥梁。触觉信息对于手部行为反馈和规划具有重要意义。软体手的柔性特性在人机交互、生物医学设备和假肢等方面具有潜在应用的优势。本文提出了一种名为 PaLmTac的嵌入软体手手掌的视触觉传感器&#xff08;vision-based tactile sensor, VBTS&#xff09…