当前位置: 首页 > news >正文

1分钟了解pandas

Pandas 是一个强大的 Python 库,用于数据分析和数据处理。它为 Python 提供了高效的数据结构和数据分析工具,使得数据操作变得简单而直观。Pandas 由 Wes McKinney 在 2008 年创建,并迅速成为数据科学领域中最受欢迎的库之一。

安装 Pandas

在开始使用 Pandas 之前,需要先安装它。如果你已经安装了 Anaconda 或其他科学计算环境,那么 Pandas 可能已经包含在里面。如果没有,可以通过 pip 安装:

pip install pandas

导入 Pandas

在 Python 脚本或交互式环境中导入 Pandas:

import pandas as pd

数据结构

Pandas 提供了两种主要的数据结构:Series 和 DataFrame。

Series

Series 是一种一维数组,可以容纳任何数据类型(整数、字符串、浮点数等)。Series 类似于 NumPy 的一维数组,但提供了更多功能,如标签索引。

创建 Series 示例:

import pandas as pd# 使用列表创建 Series
data = [1, 2, 3, 4, 5]
s = pd.Series(data)
print(s)# 使用字典创建 Series
data_dict = {'a': 1, 'b': 2, 'c': 3}
s = pd.Series(data_dict)
print(s)
DataFrame

DataFrame 是一个二维表格型数据结构,它可以存储不同类型的数据。DataFrame 类似于 Excel 表格,每一列都可以是不同的值类型。DataFrame 由多个 Series 组成。

创建 DataFrame 示例:

import pandas as pd# 使用字典创建 DataFrame
data = {'Name': ['Tom', 'Nick', 'John', 'Tom'],'Age': [20, 21, 19, 20]}
df = pd.DataFrame(data)
print(df)# 指定索引
df = pd.DataFrame(data, index=['r1', 'r2', 'r3', 'r4'])
print(df)

基本操作

查看数据
  • head(): 显示前几行数据,默认为 5 行。
  • tail(): 显示最后几行数据,默认为 5 行。
  • info(): 显示 DataFrame 的摘要信息。
  • describe(): 显示数值型列的统计信息。

示例:

print(df.head())
print(df.tail())
print(df.info())
print(df.describe())
选择数据
  • loc[]: 通过标签来获取数据。
  • iloc[]: 通过位置来获取数据。

示例:

print(df.loc['r1'])
print(df.iloc[1])
print(df.loc[:, 'Name'])
print(df.iloc[:, 1])
过滤数据
  • 使用布尔条件过滤数据。

示例:

print(df[df['Age'] > 20])
分组数据
  • 使用 groupby() 对数据进行分组并应用聚合函数。

示例:

print(df.groupby('Name').mean())
合并数据
  • concat(): 沿着一个轴连接 Series 或 DataFrame 对象。
  • merge(): 根据一个或多个键将 DataFrame 对象合并在一起。
  • join(): 将多个 DataFrame 沿着一个轴堆叠起来。

示例:

df1 = pd.DataFrame({'key': ['A', 'B', 'C', 'D'],'value': np.random.randn(4)})
df2 = pd.DataFrame({'key': ['B', 'D', 'D', 'E'],'value': np.random.randn(4)})result = pd.concat([df1, df2], ignore_index=True)
print(result)result = pd.merge(df1, df2, on='key')
print(result)

缺失数据

Pandas 支持缺失数据,并提供了一些工具来处理缺失值。

示例:

df = pd.DataFrame(np.random.randn(5, 3), columns=list('ABC'))
df.iloc[1, 1] = np.nan
df.iloc[2, 2] = np.nan
print(df)
print(df.dropna())  # 删除含有缺失值的行
print(df.fillna(value=0))  # 用 0 填充缺失值

时间序列

Pandas 有一个强大的时间序列功能集。

示例:

dates = pd.date_range('20230101', periods=6)
df = pd.DataFrame(np.random.randn(6, 4), index=dates, columns=list('ABCD'))
print(df)

结论

Pandas 是 Python 中一个非常重要的库,用于数据处理和分析。它提供了丰富的数据结构和数据操作方法,能够高效地处理各种数据格式和大小。无论是对于数据科学家还是研究人员来说,掌握 Pandas 都是非常有用的技能。

相关文章:

1分钟了解pandas

Pandas 是一个强大的 Python 库,用于数据分析和数据处理。它为 Python 提供了高效的数据结构和数据分析工具,使得数据操作变得简单而直观。Pandas 由 Wes McKinney 在 2008 年创建,并迅速成为数据科学领域中最受欢迎的库之一。 安装 Pandas …...

django-celery应用-定时执行测试cases

1、celery周期性任务 简介-----celery beat 是一个调度程序,它定期启动任务,然后由集群中的可用工作节点执行这些任务。 django-celery-beat celery默认的调度程序是 celery.beat.PersistentScheduler ,它简单地跟踪本地 shelve 数据库文件中…...

【C++深度探索】unordered_set、unordered_map封装

🔥 个人主页:大耳朵土土垚 🔥 所属专栏:C从入门至进阶 这里将会不定期更新有关C/C的内容,欢迎大家点赞,收藏,评论🥳🥳🎉🎉🎉 文章目录…...

CSS——字体背景(Font Background)

一、字体族 1、字体的相关样式: ① color 用来设置字体颜色(前景颜色) ② font-size 字体的大小 和font-size相关的单位: em 相对于当前元素的一个font-size rem 相对于根元素的一个font-size ③ font-family 字体族&#x…...

秋招突击——8/15——知识补充——Socket通信

文章目录 引言正文基于TCP协议的Socket通信基于UDP协议的Socket通信服务端如何接收更多项目多进程多线程IO多路复用select轮询IO多路复用epoll事件通知 使用Socket实现同一个机器上的多线程通信服务端创建对应socket监听端口客户端发起对应的连接请求 总结 引言 上次面试腾讯的…...

Qt第十四章 模型视图

Model/View(模型/视图)结构 文章目录 Model/View(模型/视图)结构简介视图组件Model/View结构的一些概念项目控件组(item Widgets)模型/视图 如何使用项目视图组设置行的颜色交替变换拖拽设置编辑操作其他操作 选择模型自定义选择多…...

硬件工程师必须掌握的MOS管详细知识

MOS管,全称为金属-氧化物半导体场效应晶体管(Metal-Oxide-Semiconductor Field-Effect Transistor,MOSFET),是一种重要的半导体器件,广泛应用于电子工业中各种电路的开关、放大、调制、数字电路和模拟电路等…...

希尔排序,详细解析(附图解)

1.希尔排序思路 希尔排序是一种基于插入排序的算法,通过将原始数据分成若干个子序列,然后对子序列进行插入排序,逐渐减小子序列的间隔,最后对整个序列进行一次插入排序。 1.分组直接插入排序,目标接近有序--------…...

【C语言篇】编译和链接以及预处理介绍(下篇)

文章目录 前言#和###运算符##运算符 命名约定#undef命令⾏定义条件编译#if和#endif多个分支的条件编译判断是否被定义嵌套指令 头文件被包含头文件被包含的方式本地文件包含库文件的包含 嵌套文件包含 其他预处理指令 写在最后 前言 本篇接前一篇【C语言篇】编译和链接以及预处…...

利用Llama2 7b自己实现一套离线AI

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家, 可以当故事来看,轻松学习。 离了 ChatGPT 本人简直寸步难行,今天 ChatGPT 大面积宕机,服务直到文章写作&am…...

Ciallo~(∠・ω・ )⌒☆第十七篇 Ubuntu基础使用 其一

Ubuntu是一种基于Linux的操作系统,它是开源的、免费的,并且具有广泛的用户群体。 基本文件操作:Ubuntu使用命令行工具来进行文件操作。以下是一些常用的命令: 切换到用户主目录: cd ~ 切换到上级目录: cd .…...

Linux-零拷贝技术

什么是零拷贝? 在传统的数据传输过程中,数据需要从磁盘读取到内核空间的缓冲区,然后再从内核空间拷贝到用户空间的应用程序缓冲区。如果需要将数据发送到网络,数据还需要再次从用户空间拷贝到内核空间的网络缓冲区。这个过程涉及…...

小区团购管理

TOC springboot254小区团购管理 第1章 绪论 1.1选题动因 当前的网络技术,软件技术等都具备成熟的理论基础,市场上也出现各种技术开发的软件,这些软件都被用于各个领域,包括生活和工作的领域。随着电脑和笔记本的广泛运用&…...

图像文本擦除无痕迹!复旦提出EAFormer:最新场景文本分割新SOTA!(ECCV`24)

文章链接:https://arxiv.org/pdf/2407.17020 git链接:https://hyangyu.github.io/EAFormer/ 亮点直击 为了在文本边缘区域实现更好的分割性能,本文提出了边缘感知Transformer(EAFormer),该方法明确预测文…...

Codeforces Round 966 (Div. 3)(A,B,C,D,E,F)

A. Primary Task 签到 void solve() {string s;cin>>s;bool bltrue;if(s.size()<2)blfalse;else{if(s.substr(0,2)"10"){if(s[2]0)blfalse;else if(s[2]1&&s.size()<3)blfalse; }else blfalse;}if(bl)cout<<"YES\n";else cout…...

【代码随想录算法训练营第42期 第六天 | LeetCode242.有效的字母异位词、349. 两个数组的交集、202. 快乐数、1. 两数之和】

代码随想录算法训练营第42期 第六天 | LeetCode242.有效的字母异位词、349. 两个数组的交集、202. 快乐数、1. 两数之和 一、242.有效的字母异位词 解题代码C&#xff1a; bool isAnagram(char* s, char* t) {int len1 strlen(s);int len2 strlen(t);int al[26] {0};int b…...

WebRTC音视频开发读书笔记(一)

一、基本概念 WebRTC(Web Real-Time Communication&#xff0c;网页即时通信)于2011年6月1日开源&#xff0c;并被纳入万维网联盟的W3C推荐标准&#xff0c;它通过简单API为浏览器和移动应用提供实时通信RTC功能。 1、特点 跨平台&#xff1a;可以在Web&#xff0c;Android、…...

llama3.1本地部署方式

llama3.1 资源消耗情况 &#xfeff;Llama 3.1 - 405B、70B 和 8B 的多语言与长上下文能力解析&#xfeff; &#xfeff; 70B版本&#xff0c;FP1616K token需要的资源约为75G&#xff1b;FP16128K token需要的资源约为110G &#xfeff; 1、ollama ollama工具部署及使用…...

相机光学(三十四)——色差仪颜色观察者视角

1.为什么会有观察者视角 颜色观察角度主要涉及到人眼观察物体时&#xff0c;‌视角的大小以及屏幕显示颜色的方向性对颜色感知的影响。‌ 人眼观察物体的视角&#xff1a;‌在黑暗条件下&#xff0c;‌人眼主要依靠杆体细胞来分辨物体的轮廓&#xff0c;‌而杆体细胞分布在视网…...

思二勋:web3.0是打造应对复杂市场敏捷组织的关键

本文内容摘自思二勋所著的《分布式商业生态战略》一书。 数字化时代,需要企业具备敏捷应对变化的能力,以敏捷反应应对客户和市场的迅速变化。敏捷能力的建设需要触点网络、信息系统、IT 架构、业务流程等同时实现敏捷。尤其是在多变且复杂环境中,特别要求战略管理的敏捷性和…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中&#xff0c;我们可能会遇到一些流式数据处理的场景&#xff0c;比如接收来自上游接口的 Server-Sent Events&#xff08;SSE&#xff09; 或 流式 JSON 内容&#xff0c;并将其原样中转给前端页面或客户端。这种情况下&#xff0c;传统的 RestTemplate 缓存机制会…...

大数据零基础学习day1之环境准备和大数据初步理解

学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 &#xff08;1&#xff09;设置网关 打开VMware虚拟机&#xff0c;点击编辑…...

MODBUS TCP转CANopen 技术赋能高效协同作业

在现代工业自动化领域&#xff0c;MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步&#xff0c;这两种通讯协议也正在被逐步融合&#xff0c;形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存

文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

uniapp手机号一键登录保姆级教程(包含前端和后端)

目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号&#xff08;第三种&#xff09;后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...

解析奥地利 XARION激光超声检测系统:无膜光学麦克风 + 无耦合剂的技术协同优势及多元应用

在工业制造领域&#xff0c;无损检测&#xff08;NDT)的精度与效率直接影响产品质量与生产安全。奥地利 XARION开发的激光超声精密检测系统&#xff0c;以非接触式光学麦克风技术为核心&#xff0c;打破传统检测瓶颈&#xff0c;为半导体、航空航天、汽车制造等行业提供了高灵敏…...

【FTP】ftp文件传输会丢包吗?批量几百个文件传输,有一些文件没有传输完整,如何解决?

FTP&#xff08;File Transfer Protocol&#xff09;本身是一个基于 TCP 的协议&#xff0c;理论上不会丢包。但 FTP 文件传输过程中仍可能出现文件不完整、丢失或损坏的情况&#xff0c;主要原因包括&#xff1a; ✅ 一、FTP传输可能“丢包”或文件不完整的原因 原因描述网络…...