机器学习 - 数据集(.csv文件)的基本处理

Python - 对数据集(csv文件)的基本处理

操作

载入数据集

import pandas as pd
data = pd.read_csv('数据集的文件路径或者URL',header)
# header为表头,默认为第0行,header = None 默认没有表头,会自动添加数字作为列数

数据集抽样

显示数据集

data			   # 显示数据集
data.sample(int n) # 随机显示 n 条数据, 默认n = 1
data.head(int n)   # 从头显示 n 条数据, 默认n = 5
data.tail(int n)   # 倒数显示 n 条数据, 默认n = 5

抽取列数据

col_1 = data["class"]  # 获取一列数据
col_12 = data[["sepallength","class"]]  # 获取两列及以上数据集,需要使用二维数据

按属性选择数据分类并打乱,可用于生成训练集和测试集

t0 = data[data["class"] == 0]  			# 选择种类为0的鸢尾花数据
t0 = t0.sample(len(t0),random_state = ) # 指定random_state,那么每一次打乱的顺序都是相同的
t1 = data[data["class"] == 1]
t1 = t1.sample(len(t1),random_state = 0) 
t2 = data[data["class"]== 2]
t2 = t2.sample(len(t2),random_state = 0) 

# 分配训练集和数据集,axis=0表示按纵向方式拼接,aloc表示矩阵的截取
train_X = pd.concat([t0.iloc[:40, :-1], t1.iloc[:40, :-1], t2.iloc[:40, :-1]], axis=0)
train_y = pd.concat([t0.iloc[:40, -1], t1.iloc[:40, -1], t2.iloc[:40, -1]], axis=0)
test_X = pd.concat([t0.iloc[40:, :-1], t1.iloc[40:, :-1], t2.iloc[40:, :-1]], axis=0)
test_y = pd.concat([t0.iloc[40:, -1], t1.iloc[40:, -1], t2.iloc[40:, -1]], axis=0)

数据集统计

假若 对鸢尾花数据集中各种类的花的数量进行统计

data["class"].value_counts()

修改数据集1

修改数据集中某一个属性对应的值,例如鸢尾花数据集中将花的种类映射为0,1,2

data["class"] = data["class"].map({
    
    "Iris-setosa" : 0,"Iris-virginica" : 1,"Iris-versicolor" : 2})
# class为鸢尾花的种类

修改数据集2

# 验证是否存在重复,若存在重复返回True
data.duplicated().any()
# 删除重复数据行
data = data.drop_duplicates()

持更

猜你喜欢

转载自blog.csdn.net/seek0226/article/details/106958208