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

数据分析之Pandas入门小结

Pandas数据类型

从数据类型来说,pandas主要数据结构有四种,Series,DataFrame, Arrays, Panel. 目前主要用的是前面两种数据框DataFrame 和序列Series。DataFrame是二维数据,有行有列,DataFrame默认会自动创建行索引。 Series是一维数据,默认有索引。

1. Series定义访问如下:

2. DataFrame定义访问如下,可以从文件读也可以自己定义

数据类型主要支持下面几种:

字符串类型:object

整数类型:Int64,Int32,Int16, Int8 

无符号整数:UInt64,UInt32,UInt16, UInt8 

浮点数类型:float64,float32

日期和时间类型:datetime64[ns]、datetime64[ns, tz]、timedelta[ns]

布尔类型:bool

Pandas应用

Pandas可以读取多种类型文件,如excel, txt, csv等, 这里小结下读取csv文件。

文件读取

默认分割符是",", 可以不用指定,如果是其他分割符需要指定seq参数。在路径前面加上r, 是防止被转义。

1.路径前加r

2.指定分隔符

文件解析

1.查看文件内容,通过newdf.head(),查看前100行,可以用newdf.head(100), 也可以直接输入变量名df查看全部内容,如上图

2.查看DataFrames数据类型及文件大小, 用newdf.info()

3. 处理数据,删除可以用drop或del, drop会将删除后的数据生成副本,原先的数据不做修改,如下图。

4. del 删除,是直接删除

5. drop时,默认axis=0,不设置时是按行删除,设置axis=1时是按列删除。DataFrame默认生成行索引,可通过index指定索引值去删除行。删除列时,可用columns指定列名,也可直接用列名指定。

6. 读取数据

iloc方法为默认,可通过行索引取值,可以读取切片数据,如下:

列读取可以直接用列名读取

7. 设置列索引,可以手动定义列索引,一旦定义列索引后,行索引自动消失,也就不能用iloc访问数据。如下图a列被定义为索引

可以用loc来访问列为索引列, 当然索引列是不能访问的。用索引列访问会报错,该列为索引列 df['a'],其他列依然可以用列名访问数据。

下图是用loc来访问列索引来得到数据。

8.数据填充或处理

填充空白值(NaN),最简单的可以直接替换,设置指定列替换为指定值,指定列的空值就会被替换为目标数据,如newdf2=df.fillna({'b':3,'f':7}) 

数据处理,如将d列都设置为两位数据,取值可以根据需求用正则表达式设定,如这里取d里最前2位数为d列的值。


文章转载自:

http://AiopZCis.bmdjn.cn
http://AikKOrxu.bmdjn.cn
http://tHTFkto5.bmdjn.cn
http://1z6uHJiS.bmdjn.cn
http://WQ8TVPLQ.bmdjn.cn
http://ETJ61dqk.bmdjn.cn
http://qnpNPKel.bmdjn.cn
http://mxxkXAZ2.bmdjn.cn
http://nw5IGEi3.bmdjn.cn
http://eUDTAbiq.bmdjn.cn
http://fvyoCX3h.bmdjn.cn
http://OJ0kb0FL.bmdjn.cn
http://1Jq0YejH.bmdjn.cn
http://gQnPTGrp.bmdjn.cn
http://YF7jhZ7u.bmdjn.cn
http://R4wKEOVu.bmdjn.cn
http://ahskvYdH.bmdjn.cn
http://H6fhw5dJ.bmdjn.cn
http://DQfOO4t2.bmdjn.cn
http://GbnGQHGe.bmdjn.cn
http://L1hsQqdN.bmdjn.cn
http://baZyikh5.bmdjn.cn
http://ytArNEZa.bmdjn.cn
http://92G0hCjk.bmdjn.cn
http://ClSUR2vX.bmdjn.cn
http://jYqLEu6v.bmdjn.cn
http://Q1karGdG.bmdjn.cn
http://sXrGI77S.bmdjn.cn
http://Ds0zUcdc.bmdjn.cn
http://f82IbyAT.bmdjn.cn
http://www.dtcms.com/a/376282.html

相关文章:

  • Maya绑定:变形器、高级复制、晶格
  • infinityfree 网页连接内网穿透 localtunnel会换 还是用frp成功了
  • 【三维重建】3R-GS:优化相机位姿的3DGS最佳实践
  • 稳态太阳光模拟器 | 多源分布式设计的要点有哪些?
  • 【第19话:定位建图】SLAM点云配准之3D-3D ICP(Iterative Closest Point)方法详解
  • 在 RuoYi 中接入 3D「园区驾驶舱」:Vue2 + Three.js + Nginx
  • tp5的tbmember表闭包查询 openid=‘abc‘ 并且(wx_unionid=null或者wx_unionid=‘‘)
  • PPT转化成PDF脚本
  • 基于 Dockerfile 构建镜像
  • Linux学习记录--消息队列
  • leetcode算法刷题的第三十一天
  • Linux驱动开发(2)进一步理解驱动
  • Linux驱动开发笔记(十)——中断
  • 推荐一款智能三防手机:IP68+天玑6300+PoC对讲+夜视
  • 栈:逆波兰表达式求解
  • nginx中ssl证书的获取与配置
  • 云平台得大模型使用以及调用
  • 手写简单的int类型顺序表
  • Spring Boot 深入剖析:BootstrapRegistry 与 BeanDefinitionRegistry 的对比
  • [rStar] 解决方案节点 | `BaseNode` | `MCTSNode`
  • 鸿蒙:@Builder 和 @BuilderParam正确使用方法
  • 美图云修-一站式AI修图软件
  • 从齿轮到智能:机器人如何重塑我们的世界【科普类】
  • F12中返回的id里preview和response内容不一致的问题
  • 【CSS 3D 交互】实现精美翻牌效果:从原理到实战
  • vue二次封装ant-design-vue的table,识别columns中的自定义插槽
  • vue方法汇总
  • GPU硬件架构和配置的理解
  • C++类和对象初识
  • 笔记:乐鑫 (Espressif) 的生态策略与开发者悖论