基础干货:Pandas-Data Frame基础知识点总结

R语言入门(9)-数据结构之数据框(dataframe) 1、数据框是一种表格形式的数据结构,由行和列构成,形状上类似一个矩阵数组但实际属于列表,行表示观测,列表示变量。 2、数据框实际上是一个列表。数据框的列(不包括列名)一定是由向量构成,每一列具有相同长度,所以数据框是矩形结构。但是数据框的行可以是不同数据类型。 3、数据框的创建用data.frame()来创建。 > state <- data.frame(state.abb,state.area,state.division,state.name) > state state 阅读详情

熊猫数据框架可以从列表、字典和字典列表等中创建。通过从现有存储中加载数据集来创建PandasDataFrame,存储可以是SQL数据库、CSV文件和Excel文件。

Dataframe是一种二维数据结构,即数据以表格方式排列成行和列。在按行和列排列的dataframe数据集中,我们可以将任意数量的数据集存储在一个dataframe中。

我们可以对这些数据集执行许多操作,如算术操作、列/行选择、列/行加法等。

熊猫数据框架可以通过多种方式创建。让我们逐一讨论创建DataFrame的不同方法。

1、DataFrame的创建

DataFrame是一种表格型数据结构,它含有一组有序的列,每列可以是不同的值。

创建一个空的dataframe:
可以创建的基本DataFrame是一个空的Dataframe。一个空的Dataframe是通过调用dataframe构造函数来创建的。

# import pandas as pd
import pandas as pd
  
# Calling DataFrame constructor
df = pd.DataFrame()
  
print(df)

产出:

Empty DataFrame
Columns: []
Index: []

 DataFrame的创建有多种方式,不过最重要的还是根据dict进行创建,以及读取csv或者txt文件来创建。

根据字典创建

data = {
    'state':['Ohio','Ohio','Ohio','Nevada','Nevada'],
    'year':[2000,2001,2002,2001,2002],
    'pop':[1.5,1.7,3.6,2.4,2.9]
}
frame = pd.DataFrame(data)
frame
#输出
    pop state   year
0   1.5 Ohio    2000
1   1.7 Ohio    2001
2   3.6 Ohio    2002
3   2.4 Nevada  2001
4   2.9 Nevada  2002

DataFrame的行索引是index,列索引是columns,我们可以在创建DataFrame时指定索引的值:

frame2 = pd.DataFrame(data,index=['one','two','three','four','five'],columns=['year','state','pop','debt'])
frame2

#输出
    year    state   pop debt
one 2000    Ohio    1.5 NaN
two 2001    Ohio    1.7 NaN
three   2002    Ohio    3.6 NaN
four    2001    Nevada  2.4 NaN
five    2002    Nevada  2.9 NaN

使用嵌套字典也可以创建DataFrame,此时外层字典的键作为列,内层键则作为索引:

pop = {'Nevada':{2001:2.4,2002:2.9},'Ohio':{2000:1.5,2001:1.7,2002:3.6}}
frame3 = pd.DataFrame(pop)
frame3
#输出
    Nevada  Ohio
2000    NaN 1.5
2001    2.4 1.7
2002    2.9 3.6

我们可以用index,columns,values来访问DataFrame的行索引,列索引以及数据值,数据值返回的是一个二维的ndarray

frame2.values

读取文件

读取文件生成DataFrame最常用的是read_csv,read_table方法。

该方法中几个重要的参数如下所示:

参数描述header默认第一行为columns,如果指定header=None,则表明没有索引行,第一行就是数据index_col默认作为索引的为第一列,可以设为index_col为-1,表明没有索引列nrows表明读取的行数sep或delimiter分隔符,read_csv默认是逗号,而read_table默认是制表符\tencoding编码格式

从ndarray/列表的DECT创建DataFrame:
若要从NArray/List的DECT中创建DataFrame,所有NArray必须具有相同的长度。如果传递索引,那么长度索引应该等于数组的长度。如果没有传递索引,那么默认情况下,索引将是范围(N),其中n是数组长度。


        
Pandas入门篇(二)-------Dataframe篇1(Dataframe基础知识以及单个Dataframe的处理)(机器学习前置技术栈) 本篇主要演示了Dataframe 属性、Dataframe 创建、Pandas 读取和保存数据、Dataframe 数据的选择、Dataframe 的常用方法、Dataframe 修改行列索引等内容,更多知识点请期待下期 阅读详情

相关推荐

干货整理:处理Pandas Data Frame中的行和列

数据帧是一种二维数据结构,即数据以表格方式排列成行和列。 我们可以对行或列执行基本操作,如选择、删除、添加和重命名。 今天将使用nba.csv档案。 处理列 为了处理列,我们对列执行基本操作,如选择、删除、添加和重命名。 列选择: 为了在PandasDataFrame中选择一个列,我们可以通过调用它们的列名来访问它们。 # Import pandas package import pandas as pd # Define a dictionary containing emplo..

Python6886的博客 545

Pandas多维聚合生产实践:避开银行风控中的20个致命细节

多维聚合是数据分析的核心能力,指在多个维度(如时间、类别、地域)上对数据进行分组统计与动态计算。其原理远超简单groupby,涉及滚动窗口、扩展累积、自定义规则和多级索引重塑等复合操作。技术价值在于支撑高可信度的业务决策——尤其在金融风控、经营分析等强审计场景中,直接决定模型预警准确性与监管报表合规性。典型应用场景包括商户异常交易识别、客户分层指标计算、滚动逾期率监控及BI就绪宽表生成。本文聚焦Pandas在真实银行系统中的落地难点,深入解析multi-agg选型逻辑、rolling窗口的时间对齐陷阱、自定

weixin_33713350的博客 435

用机器学习教AI玩石头剪刀布:从行为建模到实时对抗

石头剪刀布(RPS)表面是随机博弈,实则是人类决策行为的微型实验室——它承载着规则逻辑、认知偏差与策略适应三重结构,是理解监督学习建模真实世界行为的理想入口。其核心原理在于将历史对局序列转化为可学习的特征向量,通过轻量级机器学习模型(如LightGBM、逻辑回归)捕捉‘人类很少三连同招’‘赢后守旧、输后求变’等行为指纹,而非追求理论最优解。这种建模方式具备强可解释性、低算力依赖与高教学穿透力,技术价值体现在无需GPU、不依赖深度学习即可实现58%+胜率的真人对抗能力。典型应用场景覆盖高校AI启蒙教学、初学者

cunfuteng7334的博客 853

Selenium自动化测试框架搭建:从黑盒测试到Page Object模式实战

自动化测试是软件工程中提升测试效率、保障软件质量的关键实践。其核心原理是通过脚本模拟用户操作,替代重复性人工测试,实现快速、准确的回归验证。在Web应用测试领域,Selenium WebDriver作为W3C标准,因其能直接驱动浏览器、模拟真实用户行为而成为主流技术选型。采用Page Object Model(页面对象模型)设计模式,可以将页面元素与测试逻辑分离,大幅提升脚本的可维护性和稳定性,这是构建健壮自动化框架的核心价值。结合Python生态中的pytest等工具,能够高效管理测试用例、数据驱动和生成

weixin_33766805的博客 416

Pandas-DataFrame基础知识点总结

DataFrame是一种表格型数据结构,它含有一组有序的列,每列可以是不同的值。DataFrame既有行索引,也有列索引,它可以看作是由Series组成的字典,不过这些Series公用一个索引。DataFrame的创建有多种方式,不过最重要的还是根据dict进行创建,以及读取csv或者txt文件来创建。这里主要介绍这两种方式。

分享关于数据的知识。 2550

【YOLOv8/v9/v10 实战 08】YOLOv8基础:快速上手目标检测与实例分割

YOLOv8是Ultralytics在2023年推出的集大成之作,统一了目标检测、实例分割、姿态估计和图像分类四大任务。本文从YOLO家族演进讲起,深入拆解YOLOv8的架构核心,包括C2f模块、SPPF、解耦头与TaskAlignedAssigner等创新设计。通过超过10个完整代码示例,手把手演示从安装、推理、自定义数据集训练到ONNX/TensorRT部署的全流程,并提供解决常见问题(如训练不收敛、GPU溢出)的技巧。目标读者为零基础学生或急需落地的工程师,助你快速掌握YOLOv8并应用于实际项目。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 239

C++ 程序稳定运行一段时间后异常中止?vc6 运行库的bug!!!

事件查看器提示:错误应用程序 xxxxxxx.exe,版本 0.0.0.0,错误模块 MSVCRTD.DLL,版本 6.0.9782.0,错误地址 0x00012b40。这是一个通信方面的软件,需要长期运行,在压力测试时,高负荷连续运行一定天数时必定崩溃,而且都是在msvcrtd.dll中崩溃。后来在dump文件中发现调用栈在是MSVCRTD.DLL模块,跟踪代码发现是在void * __cdecl _heap_alloc_dbg(        size_t nSize,        int nBloc

qingflying的专栏 2680

win11重装系统简易教程-小白也可以上手!

本文介绍一下win11系统重装的各个步骤,也作为记录供自己后面查看。附上我之前参考的一位知乎大神写的重装win10系统文章的地址本文用到的工具全部是,不需要下载第三方镜像文件(不是说这个不好,只是第三方的软件或镜像文件网上非常多,琳琅满目,小白需要筛选甄别,直接用官方的就比较省心,大神请自便~)

Sddqa的博客 1万+

面渣逆袭之Java基础篇2

Tips:所有的关键字都是小写的,在 IDE 中会以特殊颜色显示。default 这个关键字很特殊,既属于程序控制,也属于类,方法和变量修饰符,还属于访问控制。①在程序控制中,当在 switch 中匹配不到任何情况时,可以使用 default 来编写默认匹配的情况。②在类,方法和变量修饰符中,从 JDK8 开始引入了默认方法,可以使用 default 关键字来定义一个方法的默认实现。③在访问控制中,如果一个方法前没有任何修饰符,则默认会有一个修饰符 default,但是这个修饰符加上了就会报错。

m0_73804764的博客 1110

AutoCAD2014与ObjectARX开发环境搭建实战指南

本文提供了一份详细的AutoCAD2014与ObjectARX开发环境搭建实战指南。内容涵盖从AutoCAD2014、Visual Studio 2010及ObjectARX 2014 SDK的版本匹配与环境准备,到Wizard安装、编码问题解决、Visual Studio配置,并最终通过一个完整的绘图命令开发示例,手把手引导开发者创建并加载第一个可运行的ObjectARX插件,为后续深入开发奠定坚实基础。

weixin_28475533的博客 288

YOLOv5源码逐行超详细注释与解读(1)——项目目录结构解析

全网最全YOLOv5项目目录结构超详细分析。逐个文件注释,小白上手必备

路人贾的博客 9万+

Unreal5 从入门到精通之 如何实现 离线语音识别

本文介绍了如何使用离线语音识别插件 Offline Speech Recognition 进行本地语音转文本处理。该插件支持离线运行,用户可以通过下载并运行语言服务器(如 Vosk)来处理语音数据。文章详细说明了如何设置语言服务器、下载语言模型,并在虚幻引擎(UE)项目中配置麦克风和语音捕获。此外,还介绍了如何将 SoundWave 作为输入,以及如何通过节点将语音数据发送到语言服务器进行处理。最后,提供了相关文档链接以供进一步参考。

TxNet 908

YOLOv11改进 | Conv/卷积篇 | 利用Hype-YOLO提出MANet增强YOLOv11特征提取能力

本文给大家带来的最新改进机制是由Hype-YOLO提出的MANet结构,其是一种C3、C2f、C3k2的升级版,用于增强特征提取能力。MANet可以理解为C2f的升级版,其整合了DSConv和C2f结构,这些模块的组合使得信息流动更加丰富,有助于在训练过程中提高梯度流动,从而增加基础特征的语义深度。官方发布的数据中HypeYOLO的精度是高于YOLOv11的,本文内容包含MAnet替换C3k2的教程以及原理介绍。欢迎大家订阅我的专栏一起学习YOLO,购买专栏读者联系读者入群获取进阶项目文件!

Snu77的博客 2163

手把手教你学AI GPU的UMD驱动软件开发专栏简介

通过本专栏的学习,您将掌握UMD的核心概念、开发环境搭建、API实现、内存管理和同步技术,以及在实际AI场景中的应用。通过本专栏的学习,您将不仅掌握UMD驱动开发的核心技术,还将能够将这些技术应用到实际的AI应用场景中,为您的AI应用提供更高效的硬件加速支持。无论您是想开发自己的AI加速框架,还是希望深入理解现有AI加速库的工作原理,本专栏都将为您提供宝贵的知识和实践经验。:本专栏不仅讲解UMD驱动的核心概念,还通过精心设计的实战案例,引导您从零开始构建UMD驱动,真正掌握AI GPU驱动开发的技能。

MHD0815的博客 115

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

上一篇: 新手干货教程:如何在Windows和Linux上安装Python Pandas?
下一篇: 励志|北大保安哥再上热搜!我连夜翻开了自己的书
土豆编程
博客等级 码龄6年 105粉丝 117原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值