python数据分析——pandas数据结构2

参考资料:活用pandas库

导入基础数据

# 导入库
import pandas as pd
# 读取数据集
df=pd.read_csv(r"..\data\scientists.csv")
df.head()

1、DataFrame

        DataFrame是Pandas中最常见的对象。可以把它看作python存储电子表格式数据的方式。Series数据结构的许多特征同样存在于DataFrame中。

(1)布尔子集

        我们可以借助布尔向量获取DataFrame的子集。

# 使用布尔向量获取部分数据行
print(df[df["Age"]>df["Age"].mean()])

(2)操作自动对齐和向量化(广播)

        pandas支持广播,广播源自numpy库。它实际描述的是在类数组对象(比如Seires和DataFrame)之间执行操作的效果。这些行为取决于对象的类型、长度以及与对象关联的标签。

        当DataFrame和标量进行运算时,DataFrame中的每个元素会分别和标量进行运算。本例中,df乘2之后,数值会变为原来的两倍,而字符串长度也会翻倍。

# DataFrame和标量相乘
print(df*2)

2、更改Series和DataFrame

(1)添加列

        df中Born和Died列的数据类型是object,表明它们是字符串。可以把字符串转换成合适的datetime类型,这样可以执行常见的日期和时间操作了(例如计算两个日期之差或人的年龄)。如果日期有特定格式,可以提供自定义的格式。

print(df["Born"].dtype)
print(df["Died"].dtype)
# 把Born和Died列格式化为datetime
born_datetime=pd.to_datetime(df["Born"],format="%Y-%m-%d")
died_datetime=pd.to_datetime(df["Died"],format="%Y-%m-%d")
# 增加列
df["born_dt"]=born_datetime
df["died_dt"]=died_datetime
print(df.head())
print(df.shape)
print(df.dtypes)

(2)直接更改列

        random.shuffle方法可以直接作用于序列,实现序列的“洗牌”。当然sample和reset_sample相结合也能实现“洗牌”的效果。

# Age列更改前
print(df.Age)
# 导入random库,用于产生随机数
import random
# 设置随机种子,产生相同的随机数序列
random.seed(42)
random.shuffle(df["Age"])
print(df.Age)# 使用random_state减少随机化
df["Age"]=df["Age"].sample(len(df.Age),\random_state=24).reset_index(drop=True)

        下面计算年龄,并将日期的差值转换为年

# Died_dt减去Born_dt得到的是天数
df["age_days_dt"]=df["died_dt"]-df["born_dt"]
print(df)
# 使用astype方法把天数转换为年
df["age_days_dt"]=df["age_days_dt"].astype("timedelta64[Y]")
print(df)

(3)删除值

        删除列时,可以使用选取列子集的方法选择所有希望删除的列表,也可以使用DataFrame的drop方法指定要删除的列表。

# 展示当前数据中的所有列
print(df.columns)
# 删除Age列
# 设置参数axis=1,删除列
df_dropped=df.drop(["Age"],axis=1)
# 展示删除指定列之后的列
print(df_dropped.columns)

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

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

相关文章

基于单片机的温度控制系统设计(51基础版)-设计说明书

本论文设计了一种基于51单片机的温度控制系统,该系统具备以下主要功能:首先,通过温度传感器实时检测环境温湿度,以获取准确的温度数值。其次,通过按键设置温度阈值,用户可以根据需求自行调整控制温度的上限…

Dragonfly 拓扑的路由算法

Dragonfly 拓扑的路由算法 1. Dragonfly 上的路由 (1)最小路由(2)非最小路由 2. 评估3. 存在问题 (1)吞吐量限制(2)较高的中间延迟 references Dragonfly 拓扑的路由算法 John Kim, William J. Dally 等人在 2008 年的 ISCA 中提出技术驱动、高度可扩展的 Dragonfly 拓扑。而…

杰发科技AC7801——ADC之Bandgap和内部温度计算

0. 参考 电流模架构Bandgap设计与仿真 bandgap的理解(内部带隙电压基准) ​ ​ 虽然看不懂这些公式,但是比较重要的一句应该是这个:因为传统带隙基准的输出值为1.2V ​ 1. 使用 参考示例代码。 40002000是falsh控制器寄…

从离线到实时:无锡锡商银行基于 Apache Doris 的数据仓库演进实践

作者:武基鹏,无锡锡商银行 大数据技术经理 编辑整理:SelectDB 技术团队 导读:为实现数据资产的价值转化以及全面数字化、智能化的风险管理,无锡锡商银行大数据平台经历从 Hive 离线数据仓库到 Apache Doris 实时数据仓…

鸿蒙ArkUI-X跨平台开发电商应用

一、ArkUI-X 简介 ArkUI-X 是由 OpenHarmony TSC - 跨平台应用开发框架 TSG 所孵化的开源项目,使用ArkUI-X可以让开发者基于一套主代码, 就可以构建支持多平台的精美、高性能应用。目前支持OpenHarmony、HarmonyOS、Android、 iOS,后续会逐步增加更多平台支持。 ArKUI跨平台…

经典权限五张表功能实现

文章目录 用户模块(未使用框架)查询功能实现步骤代码 新增功能实现步骤代码 修改功能实现步骤代码实现 删除功能实现步骤代码实现 用户模块会了,其他两个模块与其类似 用户模块(未使用框架) 查询功能 这里将模糊查询和分页查询写在一起 实现步骤 前端&#xff1…

哈希表(unordered_set、unordered_map)

文章目录 一、unordered_set、unordered_map的介绍二、哈希表的建立方法2.1闭散列2.2开散列(哈希桶/拉链法) 三、闭散列代码(除留余数法)四、开散列代码(拉链法/哈希桶) 一、unordered_set、unordered_map的…

[单机]成吉思汗3_GM工具_VM虚拟机

稀有端游成吉思汗1,2,3单机版虚拟机一键端完整版 本教程仅限学习使用,禁止商用,一切后果与本人无关,此声明具有法律效应!!!! 教程是本人亲自搭建成功的,绝对是完整可运行的&#x…

【基于 PyTorch 的 Python 深度学习】6 视觉处理基础:卷积神经网络(1)

前言 文章性质:学习笔记 📖 学习资料:吴茂贵《 Python 深度学习基于 PyTorch ( 第 2 版 ) 》【ISBN】978-7-111-71880-2 主要内容:根据学习资料撰写的学习笔记,该篇主要介绍了卷积神经网络的卷积层部分。 预&#xff1…

unity ui 同屏

一共有三个摄像机,上屏,下屏 和 类似照相机的ccamera 类似照相机的ccamera的设置: 下屏摄像机设置: 下屏交互的Canvas设置: 新建一个canvas,下面放上rawimage: 如果下屏不想显示的内容&#xf…

2024蓝桥杯RSA-Theorem

方法1:直接使用工具yafu解题 yafu的使用方法 安装:解压后直接使用即可,在文件包内,执行命令终端,输入命令行 1、如果数比较小,进入该文件的目录后可以直接使用: yafu-x64 factor(n) 如果是powershell&…

Maven 的仓库、周期和插件

优质博文:IT-BLOG-CN 一、Maven 仓库 在Maven的世界中,任何一个依赖、插件或者项目构建的输出,都可以称为构建。Maven在某个统一的位置存储所有项目的共享的构建,这个统一的位置,我们就称之为仓库。任何的构建都有唯一…

计算机视觉——基于改进UNet图像增强算法实现

1. 引言 在低光照条件下进行成像非常具有挑战性,因为光子计数低且存在噪声。高ISO可以用来增加亮度,但它也会放大噪声。后处理,如缩放或直方图拉伸可以应用,但这并不能解决由于光子计数低导致的低信噪比(SNR&#xff…

深度学习——前馈全连接神经网络

前馈全连接神经网络 1.导入需要的工具包2.数据导入与数据观察(1)读取csv的文件信息:(2)训练数据前5行(3)打印第一个图(4)观察数据中的信息(5)查看…

stm32——OLED篇

技术笔记! 一、OLED显示屏介绍(了解) 1. OLED显示屏简介 二、OLED驱动原理(熟悉) 1. 驱动OLED驱动芯片的步骤 2. SSD1306工作时序 三、OLED驱动芯片简介(掌握) 1. 常用SSD1306指令 2. …

[Kotlin]创建一个私有包并使用

1.创建Kotlin测试项目 在Android Studio或其他IDE中选择“Create New Project”。选择Kotlin和Gradle作为项目类型和构建系统。指定项目名称和位置,完成设置。 2.创建Android Library模块 官方文档:创建 Android 库 | Android Studio | Android De…

图片转word如何转换?

要将图片转换为Word文档,你可以使用以下方法之一: 以上这些方法都可以帮助你将图片中的文本转换为可编辑的Word文档,你可以根据自己的喜好和需求选择其中一种方法来操作。 使用OCR软件或在线工具:有许多OCR(Optical Ch…

2024年怎样提取小程序里的视频

在未来的2024年,我们亲眼目睹了科技的飞速发展和互联网的无限可能。在这个数字化世界中,小程序已经成为我们日常生活中不可或缺的一部分,无论是购物、学习,还是娱乐,小程序都给我们带来了前所未有的便利。然而&#xf…

【OceanBase诊断调优】—— 租户资源统计项及其查询方法

本文主要介绍 OceanBase 数据库中租户资源统计项及其查询方法。 适用版本 OceanBase 数据库 V4.1.x、V4.2.x 版本。 CPU 资源统计项 逻辑 CPU 使用率(线程处理请求的时间占比)。 通过虚拟表 __all_virtual_sysstat 在 SYS 系统租户下,查看…

棱镜七彩参编《网络安全技术 软件供应链安全要求》国家标准发布

据全国标准信息公共服务平台消息显示,《网络安全技术 软件供应链安全要求》(GB/T 43698-2024)国家标准已于2024年4月25日正式发布,并将于2024年11月1日正式实施。棱镜七彩作为主要编制单位之一参与该国家标准的编制,为…