数据预处理中的标签提取和数据分类

处理的是.csv文件,首先要做的是读取.csv文件中的表格数据,使用的是pandas中的read_csv函数。

那么问题来了,这样读取文件返回值是什么呢?

我们来输出一下:

发现是DataFrame类型的数据,那么这个数据类型到底是什么呢?

经过查找资料,菜鸟教程上是这么解释的:DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。

Pandas 数据结构 – DataFrame | 菜鸟教程 (runoob.com)

那么问题来了,我也不是很记得Series和字典这两种数据结构,继续学习。

数据结构 - Series:

Pandas 数据结构 – Series | 菜鸟教程 (runoob.com)

数据结构 - 字典:花括号

Python 字典(Dictionary) | 菜鸟教程 (runoob.com)

接下来要将表格根据标签将数据分开,因为有的标签数据太少了,需要扩充标签数据。

由于数据集的标签数据在最后一列,所以用numpy中的shape[1]来读取列数,shape[0]读取的是行数,对于二维数据来说。shape[1]-1就是列索引号,因为索引号从0开始。

需要将标签提取成一个无序不重复元素集,先使用iloc函数将标签列全部提取出,values去掉索引,ravel将多维数组转化为一维数组,然后使用set函数创建一个无序不重复元素集。

把数据按标签分开就是:

标签数据组的索引为索引,在新的数组中把该标签的数据全部添加进去,然后把新的数据按照标签号以DataFrame数据类型重新保存成.csv文件。

猜你喜欢

转载自blog.csdn.net/qq_46012097/article/details/129280474
今日推荐