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

时间:2024-03-27 21:10:44

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

创建方法

DataFrame

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

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

1、通过字典创建

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

2、通过元组创建

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

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

3、randn随机生成

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

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

Series

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

1、通过字典创建

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

2、通过列表创建

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

3、通过arange创建

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

array

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

tensor

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

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

转化

DataFrame 拆解 Series

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

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

DataFrame 转 array

1、直接获取values

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

2、通过numpy转换

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

Series 转 DataFrame

1、合成

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

2、to_frame()

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

Series 转 array

方法同DataFrame 转 array。

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

array 转 DataFrame

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

array 转 Series

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

array 转 tensor

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

tensor 转 array

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

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

关注公众号【奶糖猫】获取更多精彩好文