Pandas中df常用方法介绍
目录
- 常用方法
- df.columns
- df.index
- df.values
- df.T
- df.sort_index()
- df.sort_values()
- 案例
常用方法
df.columns
df.columns 是 Pandas 中 DataFrame 对象的一个属性,用于获取 DataFrame 中的列标签(列名)。
基本语法如下:
df.columns
该属性返回一个包含 DataFrame 中所有列标签的 Index 对象,您可以将其视为一个包含列标签的列表。
示例:
import pandas as pd# 创建一个 DataFrame
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)# 获取 DataFrame 的列标签
columns = df.columns
print(columns)
Index(['A', 'B'], dtype='object')
df.index
df.index 是 Pandas 中 DataFrame 对象的一个属性,用于获取 DataFrame 的行标签(行索引)。
基本语法如下:
df.index
该属性返回一个表示 DataFrame 的行索引的 Index 对象,类似于一个包含行标签的列表。
示例:
import pandas as pd# 创建一个 DataFrame
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)# 获取 DataFrame 的行索引
index = df.index
print(index)RangeIndex(start=0, stop=3, step=1)
df.values
df.values 是 Pandas 中 DataFrame 对象的一个属性,用于获取 DataFrame 中的数据部分,即 DataFrame 的值。
基本语法如下:
df.values
该属性返回一个包含 DataFrame 中所有数据的 NumPy 数组。每行代表 DataFrame 中的一行数据,每列代表 DataFrame 中的一列数据。
示例:
import pandas as pd# 创建一个 DataFrame
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)# 获取 DataFrame 的值
df_values = df.values
print(df_values)[[1 4][2 5][3 6]]
df.T
df.T 是 Pandas 中 DataFrame 对象的一个属性,用于对 DataFrame 进行转置操作,即将行和列进行互换。
基本语法如下:
df.T
该属性返回一个新的 DataFrame,新的 DataFrame 中的行标签(行索引)变为原 DataFrame 的列标签(列名),列标签(列名)变为原 DataFrame 的行标签(行索引)。
示例:
import pandas as pd# 创建一个 DataFrame
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)# 对 DataFrame 进行转置操作
df_transposed = df.T
print(df_transposed)0 1 2
A 1 2 3
B 4 5 6
df.sort_index()
df.sort_index() 是 Pandas 中 DataFrame 对象的一个方法,用于根据行索引或列索引对 DataFrame 进行排序。
基本语法如下:
df.sort_index(axis=0, level=None, ascending=True, inplace=False, kind='quicksort', na_position='last', sort_remaining=True, ignore_index=False)
其中,常用的参数包括:
- axis:用于指定按行索引(axis=0)还是列索引(axis=1)进行排序。
- ascending:用于指定排序的顺序,True表示升序,False 表示降序。
- inplace:用于指定是否在原地修改 DataFrame,True 表示在原地修改,False表示返回一个新的排序后的 DataFrame。
示例:
import pandas as pd# 创建一个 DataFrame
data = {'A': [1, 3, 2], 'B': [4, 6, 5]}
df = pd.DataFrame(data, index=['c', 'a', 'b'])# 根据行索引排序
sorted_df = df.sort_index()
print(sorted_df)A B
a 3 6
b 2 5
c 1 4
df.sort_values()
df.sort_values() 是 Pandas 中 DataFrame 对象的一个方法,用于根据列中的值对 DataFrame 进行排序。
基本语法如下:
df.sort_values(by, axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last', ignore_index=False)
其中,常用的参数包括:
- by:指定按照哪一列或多列的值进行排序。
- axis:用于指定按行(axis=0)还是按列(axis=1)进行排序。
- ascending:用于指定排序的顺序,True 表示升序,False 表示降序。
- inplace:用于指定是否在原地修改DataFrame,True 表示在原地修改,False 表示返回一个新的排序后的 DataFrame。
示例:
import pandas as pd# 创建一个 DataFrame
data = {'A': [3, 1, 2], 'B': [6, 4, 5]}
df = pd.DataFrame(data)# 根据列'A'的值进行排序
sorted_df = df.sort_values(by='A')
print(sorted_df)A B
1 1 4
2 2 5
0 3 6
案例
import pandas as pd
import numpy as npdf2 =pd.DataFrame({'A':1,
'B':pd.Timestamp('20160102'),
'C':pd.Series(1,index=list(range(4)),dtype='float32'),
'D':np.array([3]*4,dtype='int32'),
'E':pd.Categorical(['test','train','test','train']),
'F':'foo'
})print(df2)
#print(df2.columns)
#print(df2.values)
#print(df2.index)
#print(df2.T)
print(df2.sort_index(axis=1,ascending =False))print(df2.sort_index(axis=0,ascending =False))print(df2.sort_values(by='E'))A B C D E F
0 1 2016-01-02 1.0 3 test foo
1 1 2016-01-02 1.0 3 train foo
2 1 2016-01-02 1.0 3 test foo
3 1 2016-01-02 1.0 3 train fooF E D C B A
0 foo test 3 1.0 2016-01-02 1
1 foo train 3 1.0 2016-01-02 1
2 foo test 3 1.0 2016-01-02 1
3 foo train 3 1.0 2016-01-02 1A B C D E F
3 1 2016-01-02 1.0 3 train foo
2 1 2016-01-02 1.0 3 test foo
1 1 2016-01-02 1.0 3 train foo
0 1 2016-01-02 1.0 3 test fooA B C D E F
0 1 2016-01-02 1.0 3 test foo
2 1 2016-01-02 1.0 3 test foo
1 1 2016-01-02 1.0 3 train foo
3 1 2016-01-02 1.0 3 train foo
相关文章:
Pandas中df常用方法介绍
目录 常用方法df.columnsdf.indexdf.valuesdf.Tdf.sort_index()df.sort_values() 案例 常用方法 df.columns df.columns 是 Pandas 中 DataFrame 对象的一个属性,用于获取 DataFrame 中的列标签(列名)。 基本语法如下: df.col…...
LabVIEW中AVI帧转图像数据
在LabVIEW中,有时需要将AVI视频文件的帧转换为图像数据进行进一步处理。下面详细讲解了如何从AVI视频提取单帧并将其转换为图像数据集群,以便与其他图像处理VI兼容。 问题背景: 用户已经拥有能够处理JPEG图像数据集群的VI,现在希…...
并发与并行的区别:深入理解Go语言中的核心概念
在编程中,并发与并行的区别往往被忽视或误解。很多开发者在谈论这两个概念时,常常把它们混为一谈,认为它们都指“多个任务同时运行”。但实际上,这种说法并不完全正确。如果我们深入探讨并发和并行的区别,会发现它不仅是词语上的不同,更是编程中非常重要的抽象层次,特别…...
小小扑克牌算法
1.定义一个扑克牌类Card: package democard; public class Card {public String suit;//表示花色public int rank;//表示牌点数Overridepublic String toString() {return "{"suit rank"}";}//实例方法,初始化牌的点数和花色public…...
【第34章】Spring Cloud之SkyWalking分布式日志
文章目录 前言一、准备1. 引入依赖 二、日志配置1. 打印追踪ID2. gRPC 导出 三、完整日志配置四、日志展示1. 前端2. 后端 总结 前言 前面已经完成了请求的链路追踪,这里我们通过SkyWalking来处理分布式日志; 场景描述:我们有三个服务消费者…...
easy-es动态索引支持
背景 很多项目目前都引入了es,由于es弥补了mysql存储及搜索查询的局限性,随着技术的不断迭代,原生的es客户端使用比较繁琐不直观,上手代价有点大,所以easy-es框架就面世了,学习成本很低,有空大…...
SWC(Speedy Web Compiler)
概述 SWC 由 Rust 编写, 既可用于编译,也可用于打包。 对于编译,它使用现代 JavaScript 功能获取 JavaScript / TypeScript 文件并输出所有主流浏览器支持的有效代码。 SWC在单线程上比 Babel 快 20 倍,在四核上快 70 倍。 简…...
【计算机网络】传输层协议UDP
目录 一、端口号1.1 端口号范围划分1.2 认识知名端口号 二、UDP协议2.1 UDP协议端格式2.2 UDP的特点2.3 UDP的缓冲区2.4 UDP使用注意事项2.5 基于UDP的应用层协议 一、端口号 传输层协议负责数据的传输,从发送端到接收端。端口号标识一个主机上进行通信的不同的应用…...
Docker+PyCharm远程调试环境隔离解决方案
DockerPyCharmMiniconda实现深度学习代码远程调试和环境隔离 本文详细介绍了如何在局域网环境下,利用Docker、PyCharm和Miniconda构建一个高效的深度学习远程调试平台。首先在服务器(server)上,通过Docker构建包含不同CUDA环境的镜…...
数字化转型的理论框架对比:从多维视角指导企业成功变革对比DPBOKIT4ITCOBITTOGAF
数字化转型的多维框架解析 在数字化时代,企业如何有效实现数字化转型已成为其生存和发展的关键问题。然而,市场上关于数字化管理的各种框架和理论并存,企业需要根据自身的需求选择最适合的指导路径。本文将通过对几个核心理论框架的对比&…...
【C++掌中宝】深入解析C++命名空间:有效管理代码的利器
文章目录 前言1. namespace 的价值2. namespace 的定义3. 命名空间的本质4. 嵌套的命名空间5. 命名空间的使用6. using 指令7. 补充结语 前言 假设这样一种情况,当一个班上有两个名叫 Zara 的学生时,为了明确区分它们,我们在使用名字之外&am…...
2024/9/21 leetcode 21.合并两个有序链表 2.两数相加
目录 21.合并两个有序链表 题目描述 题目链接 解题思路与代码 2.两数相加 题目描述 题目链接 解题思路与代码 --------------------------------------------------------------------------- 21.合并两个有序链表 题目描述 将两个升序链表合并为一个新的 升序 链表并返…...
Python学习的主要知识框架
Python的主要学习知识点非常广泛且深入,但我可以为您概括一些核心的学习领域,帮助您系统地掌握Python编程。以下是Python学习的主要知识框架: 1. Python基础语法 数据类型:整数、浮点数、字符串、布尔值、列表、元组、字典、集合…...
LLaMA-Factory 使用 alpaca 格式的数据集
LLaMA-Factory 使用 alpaca 格式的数据集 flyfish alpaca 格式最初与Stanford大学的一个研究项目相关联,该项目旨在通过少量高质量的数据来微调大型语言模型。它受到了Alpaca模型(一种基于LLaMA的指令跟随模型)的影响,该模型是在…...
【Mysql】Mysql数据库基础
1.❤️❤️前言~🥳🎉🎉🎉 Hello, Hello~ 亲爱的朋友们👋👋,这里是E绵绵呀✍️✍️。 如果你喜欢这篇文章,请别吝啬你的点赞❤️❤️和收藏📖📖。如果你对我的…...
一文彻底让你搞懂轨迹规划(总结)
机器人在运行中不可避免的会进行运动,那么就会产生出轨迹规划的概念。 轨迹规划的特点:用一定的函数形式表示控制量(位置,速度,加速度)的控制律,根据约束或最优目标,求取控制控制参…...
windows C++ 并行编程-异步消息块(二)
overwrite_buffer 类 concurrency::overwrite_buffer 类与 unbounded_buffer 类类似,只不过 overwrite_buffer 对象仅存储一条消息。 此外,当目标接收来自 overwrite_buffer 对象的消息时,不会从缓冲区中删除该消息。 因此,多个目…...
【软件基础知识】什么是 API,详细解读
想象一下,你正在使用智能手机上的天气应用。你打开应用,瞬间就能看到实时天气、未来预报,甚至是空气质量指数。但你有没有想过,这些数据是如何神奇地出现在你的屏幕上的?答案就在三个字母中:API。 API,全称Application Programming Interface(应用程序编程接口),是现代软件世…...
计算机四级-计算机网络
一、基础知识 1.对计算机网络发展具有重要影响的广域网是:ARPANET 随机争用型的介质访问控制方法起源于:ALOHANET 2.计算机网络发展阶段: A)第一阶段的主要成果是计算机技术与通信技术的结合 B)第二阶段的主要成果…...
【linux 获取时间】
linux 获取时间接口 我们在开发调试过程中,可能遇到一些和调用时序相关的问题,为了查看哪个步骤先调用,哪个步骤后调用,我们可以使用函数打印或者主动trace堆栈…但是有的时候我们需要排查2个接口调用的时间间隔,我们可…...
XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
OpenLayers 可视化之热力图
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...
【JavaEE】-- HTTP
1. HTTP是什么? HTTP(全称为"超文本传输协议")是一种应用非常广泛的应用层协议,HTTP是基于TCP协议的一种应用层协议。 应用层协议:是计算机网络协议栈中最高层的协议,它定义了运行在不同主机上…...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...
拉力测试cuda pytorch 把 4070显卡拉满
import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试,通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小,增大可提高计算复杂度duration: 测试持续时间(秒&…...
C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...
RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文全面剖析RNN核心原理,深入讲解梯度消失/爆炸问题,并通过LSTM/GRU结构实现解决方案,提供时间序列预测和文本生成…...
排序算法总结(C++)
目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...
