编辑代码

CREATE DATABASE test;
use test;
CREATE TABLE student (
    ID INT PRIMARY KEY,
    xh VARCHAR(20) COMMENT '学号',
    xm VARCHAR(50) COMMENT '姓名',
    xb VARCHAR(10) COMMENT '性别',
    csny VARCHAR(20) COMMENT '出生年月',
    nj INT COMMENT '年级',
    xy VARCHAR(50) COMMENT '学院'
);

CREATE TABLE goods(
       id INT(11) PRIMARY KEY AUTO_INCREMENT COMMENT '商品编号',
       type VARCHAR(30) NOT NULL COMMENT '商品类别',
       name VARCHAR(30) UNIQUE COMMENT '商品名称',
       price DECIMAL(7,2) COMMENT '商品价格',
       num INT(11) DEFAULT 0 COMMENT '商品库存',
       add_time DATETIME COMMENT '添加时间'
);

INSERT INTO goods(id, type, name, price, num, add_time)
VALUES(1,'书籍','西游记',50.4,20,'2018-01-01 13:40:40'),
              (2,'糖类','牛奶糖',2.5,200,'2018-02-02 13:40:40'),
              (3,'糖类','水果糖',2.5,100,null),
              (4,'服饰','休闲西服',800,null,'2018-04-04 13:40:40'),
              (5,'饮品','果汁',3,70,'2018-05-05 13:40:40');

-- INSERT INTO student (ID, xh, xm, xb, csny, nj, xy) VALUES
-- (1, 'J171001', '张三丰', '男', '2001年3月', 21, '信息工程');
INSERT INTO student (ID, xh, xm, xb, csny, nj, xy) VALUES
(1, 'J171001', '张三丰', '男', '2001年3月', '21', '信息工程'),
(2, 'J171002', '李静', '女', '2001年2月', '21', '工商管理'),
(3, 'J171003', '张明', '男', '2001年3月', '21', '计算机科学与应用'),
(4, 'J1721001', '王丽', '女', '2002年6月', '22', '轮机工程'),
(5, 'J1721002', '李大成', '男', '2002年9月', '22', '机电工程'),
(6, 'J1721002', '张白云', '女', '2000年4月', '22', '艺术学院'),
(7, 'J1731003', '刘芳芳', '女', '2002年8月', '23', '材料学院'),
(8, 'J1731003', '赵明明', '男', '2001年12月', '23', '智能工程学院');
-- SELECT * FROM student;

-- show tables;
INSERT INTO goods(id, type, name, price, num, add_time)
VALUES(6,'书籍','论语',109,50,'2018-01-03 13:40:40'),
              (7,'水果','西瓜',1.5,null,'2018-02-05 13:40:40'),
              (8,'水果','苹果',3,100,'2018-03-05 13:40:40'),
              (9,'服饰','牛仔裤',120,10,'2018-05-04 13:40:40'),
              (10,'书籍','红楼梦',50.5,15,'2018-05-06 13:40:40'),
              (11,'书籍','红楼梦2',50.5,15,'2018-05-06 13:40:40');


SELECT * FROM goods;
SELECT stu.xh as "account",	
       stu.xm as "name",	
       stu.xb as "gender",
       stu.csny as "birth",	
       stu.nj as "grade",	
       stu.xy as "department"
FROM student stu
WHERE stu.nj IN ('22','23');

                     


-- SELECT id FROM goods;
-- SELECT a.id,a.name,a.price FROM goods AS a;
-- SELECT COUNT(*)  FROM goods;
-- SELECT COUNT(*) AS goods_num FROM goods;
-- SELECT type AS '商品类别',COUNT(*) AS '平均价格' FROM goods GROUP BY type;
-- SELECT type,COUNT(type) AS '数量' FROM goods GROUP BY type;
-- SELECT MAX(num),MIN(num) FROM goods;

-- SELECT stu.xh AS 'account',
--        stu.xm AS 'name',
--        stu.xb AS 'gender',
--        stu.csny AS 'birth',
--        stu.nj AS 'grade',
--        stu.xy AS 'department'
--  FROM student AS stu WHERE stu.xh='J1721001';
--  查询表中,学号为“J1721001”的学生记录
-- 学院为“计算机科学与应用”的学生记录

-- 查询表中,男生、女生的数量
-- SELECT stu.xb,COUNT(*) FROM student AS stu GROUP BY stu.xb;





CREATE TABLE course_records (
    ID INT PRIMARY KEY,
    name VARCHAR(50) COMMENT '学员姓名',
    course_name VARCHAR(100) COMMENT '课程名称',
    buy_time VARCHAR(20) COMMENT '购买课程时间',
    view_duration INT COMMENT '观看时长(秒)',
    play_times INT COMMENT '播放次数',
    valid VARCHAR(10) COMMENT '是否有效',
    last_score INT COMMENT '最近一次模拟考成绩'
);

INSERT INTO course_records (ID, name, course_name, buy_time, view_duration, play_times, valid, last_score) VALUES
(1, '张三丰', '数据采集(一)', '2023年10月', 3600, 5, '是', 90),
(2, '李静', '数据处理', '2022年11月', 3240, 4, '是', 85),
(3, '张明', '数据标注工程', '2023年11月', 1120, 3, '是', 72),
(4, '王丽', '数据分析', '2023年11月', 56, 2, '否', 60),
(5, '李大成', '数据采集(一)', '2023年11月', 8200, 6, '是', 98),
(6, '张白云', '数据采集(二)', '2023年12月', 450, 1, '是', 20),
(7, '刘芳芳', '机器学习', '2023年11月', 3980, 2, '是', 40),
(8, '赵明明', '机器学习', '2023年11月', 2500, 4, '是', 80);

划分特征X与标签y  一维
X = data['预估薪资']
y = data['是否会购买'];

划分特征X与标签y 多维
X = data_drop(columns['是否会购买'])
y = data['是否会购买']

train_test_split函数
From sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test = train_test_split(train_data,train_target, test_size,random_state, shuffle)

划分训练集和测试集
X_train,X_test,y_train,y_test = train_test_split(X,y,test_size=0.2,random_state = 2020)

转换为二维数组
X_train = X_train.values.reshape(-1,1)
X_test = X_test.values.reshape(-1,1);

各模型的搭建与基本使用
#导入逻辑回归模型
from sklearn.linear_model import LogisticRegression	
model = LogisticRegression()
model.fit(X_train, y_train)
#导入随机森林模型
from sklearn.ensemble import RandomForestClassifier	
model = RandomForestClassifier()
model.fit(X_train,y_train)
#导入决策树模型
from sklearn.tree import DecisionTreeClassifier	
model = DecisionTreeClassifier()
model.fit(X_train,y_train)
#导入K近邻模型
from sklearn.neighbors import KNeighborsClassifier	
model=KNeighborsClassifier() 
model.fit(X_train,y_train)

输出精确度
accuracy = model.score(X_test,y_test)
print(accuracy)

输出预测值
y_test_pred = model.predict(X_test)
print(y_test_pred)

#读取数据
data = read_csv('') # 读取csv文件
read_excel( ) # 读取x1s等文件

# 对数据进行清洗与准备
data.info() # 查看数据概况
data.describe() # 描述性统计信息
data.shape # 获取数据规模
data.dtypes # 各个字段的数据类型
data.head() # 预览前5行的数据
data.tail() # 预览后5行的数据

# 对缺失数据或者重复数据进行处理
data.isnull() # 检测出缺失的数据
data.dropna() # 丢弃所有包含缺失值的数据
data.fillna(0) # 对缺失值进行填充
data.duplicated() # 查询是否存在重复数据
data.drop_duplicates() # 删除重复数据