专栏首页小数志总结 | DataFrame、Series、array、tensor的创建及相互转化

总结 | DataFrame、Series、array、tensor的创建及相互转化

本文约18张图,阅读大概需要5分钟

最近在入门图像识别,自然也会用到深度学习框架,也接触到了一个新的数据结构——tensor(张量)。除此之外,也有一些很常用的数据结构,比如DataFrame、Series、array等,这篇文章主要对这几种数据结构的创建及相互转换做一个小总结。

创建方法

DataFrame

这里就不在单独贴出每种数据结构的示例图,只是简单描述一下各个数据结构的特点。DataFrame类似于一个二维矩阵,但它的行列都有对应的索引。

DataFrame创建方法很多,这里给出比较常用的三种方法:

1、通过字典创建
2、通过元组创建

原理与通过字典创建一致,但需要注意行、列索引需要自己指定。

3、randn随机生成

np.random.randn(m,n)是生成一个 规格的矩阵,行列索引需要自己指定。

Series

Series 可以当成 DataFrame 中一个元素,一列索引对应一列值。

1、通过字典创建
2、通过列表创建
3、通过arange创建

array

tensor

这里 Tensor 是类,tensor 和 as_tensor则是方法,第一种生成的是浮点型,后两种生成数据的类型和传入数据类型一致,也就是说传入整型生成整型,传入浮点型生成浮点型。

转化

DataFrame 拆解 Series

索引出的单行或者单列的数据类型为Series。

DataFrame 转 array

1、直接获取values
2、通过numpy转换

Series 转 DataFrame

1、合成
2、to_frame()方法

Series 转 array

方法同DataFrame 转 array。

array 转 DataFrame

array 转 Series

array 转 tensor

tensor 转 array

上面这些创建及转化的方法只是一部分,也算是比较常用的一些,除此之外比如还可以通过列表作为中间介质进行转换等等,这里就不在过多介绍啦。

相关阅读:

本文分享自微信公众号 - 小数志(Datazhi)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-09-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 用numpy如何创建一个空数组?

    最近在用numpy过程中,总会不自觉的需要创建空数组,虽然这并不是一个明智的做法,但终究是可能存在这种需求的。本文简单记录3种用numpy生成空数组的方式。

    luanhz
  • PySpark SQL——SQL和pd.DataFrame的结合体

    昨日推文PySpark环境搭建和简介,今天开始介绍PySpark中的第一个重要组件SQL/DataFrame,实际上从名字便可看出这是关系型数据库SQL和pan...

    luanhz
  • 多种爬虫方式对比

    以安居客杭州二手房信息为爬虫需求,分别对比实验了三种爬虫框架、三种字段解析方式和三种数据存储方式,旨在全方面对比各种爬虫方式的效率高低。

    luanhz
  • 总结 | DataFrame、Series、array、tensor的创建及相互转化

    最近在入门图像识别,自然也会用到深度学习框架,也接触到了一个新的数据结构——tensor(张量)。除此之外,也有一些很常用的数据结构,比如DataFrame、S...

    数据森麟
  • 深度学习技术从胸部 X 光片里及早发现疾病

    想要分析胸部 X 光片吗? 我们有一套神经网络能派上用场。 来自马里兰州贝塞斯达美国国家卫生研究院(NIH)的研究人员,采用深度学习技术发展出一项架构,能从胸部...

    GPUS Lady
  • Eclipse 下找不到或无法加载主类的解决办法

    有时候 Eclipse 会发神经,好端端的 project 就这么编译不了了,连 Hello World 都会报“找不到或无法加载主类(Exception in...

    用户1177713
  • python优雅操作-实现名片管理系统

    python的确是适合零基础的编程爱好者学习的语言,python的程序能看懂,但是很难去实现,这是每一个学习python的新手们基本上都会遇到的难题。好记性不如...

    一墨编程学习
  • 基于意图的网络(IBN):如何降低网络的复杂性?

    在过去的十年里网络经历了各种各样的变革,变得复杂且难以管理,很难继续使用传统的机制。因此现在迫切需要对来自多个供应商的设备进行设计和集成,并采用虚拟化和云服务等...

    SDNLAB
  • 服务设计

    服务识别方法: 角色分析,场景梳理最小可用,用户服务,应用服务(横向按应用调用顺序,纵向按用户服务),系统能力分析,前置依赖优先后置依赖同版本

    林万程
  • Python 之父撰文回忆:为什么要创造 pgen 解析器?

    花下猫语:近日,Python 之父在 Medium 上开通了博客,并发布了一篇关于 PEG 解析器的文章(参见我翻的 全文译文)。据我所知,他有自己的博客,为什...

    Python猫

扫码关注云+社区

领取腾讯云代金券