东方耀AI技术分享

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 16485|回复: 26
打印 上一主题 下一主题

[课堂笔记] 10、scikit-learn机器学习框架的安装与环境搭建_笔记

[复制链接]

1365

主题

1856

帖子

1万

积分

管理员

Rank: 10Rank: 10Rank: 10

积分
14429
QQ
跳转到指定楼层
楼主
发表于 2018-3-29 19:33:55 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式


10、scikit-learn机器学习框架的安装与环境搭建_笔记


原始数据来源(个人家庭用电数据集):http://archive.ics.uci.edu/ml/da ... c+power+consumption




  1. # 线性回归的类
  2. from sklearn.linear_model import LinearRegression
  3. # 原始数据= 训练数据 + 测试数据  数据划分的类
  4. from sklearn.model_selection import train_test_split
  5. # 数据标准化
  6. from sklearn.preprocessing import StandardScaler

  7. import numpy as np
  8. import pandas as pd
  9. import matplotlib as mpl
  10. import matplotlib.pyplot as plt
  11. from pandas import DataFrame
  12. import time

  13. ## 设置字符集,防止中文乱码
  14. mpl.rcParams['font.family'] = 'sans-serif'
  15. mpl.rcParams['font.sans-serif'] = 'SimHei'
  16. mpl.rcParams['axes.unicode_minus'] = False

  17. # 加载数据
  18. # 日期、时间、有功功率、无功功率、电压、电流、厨房用电功率、洗衣服用电功率、热水器用电功率
  19. path1 = 'datas/household_power_consumption_1000.txt'
  20. df = pd.read_csv(path1, sep=';', low_memory=False)
  21. # 没有混合类型的时候可以通过low_memory=False调用更多内存,加快效率)

  22. # print(df.head(2))
  23. # print(df.index)
  24. print(df.columns)

  25. # 查看数据结构
  26. # print(df.info())

  27. # 异常数据处理(异常数据过滤)
  28. # 替换非法字符为np.nan
  29. new_df = df.replace('?', np.nan)
  30. # 只要有一个数据为空,就进行行删除操作
  31. datas = new_df.dropna(axis=0, how='any')
  32. # 观察数据的多种统计指标(只能看数值型的 本来9个的变7个了)
  33. # print(datas.describe().T)


  34. # 需求:构建时间和功率之间的映射关系,可以认为:特征属性为时间;目标属性为功率值。
  35. # 获取x和y变量, 并将时间转换为数值型连续变量

  36. # 创建一个时间函数格式化字符串
  37. def date_format(dt):
  38.     # dt显示是一个Series
  39.     # print(dt.index)
  40.     # print(dt)
  41.     t = time.strptime(' '.join(dt), '%d/%m/%Y %H:%M:%S')
  42.     return (t.tm_year, t.tm_mon, t.tm_mday, t.tm_hour, t.tm_min, t.tm_sec)

  43. X = datas.iloc[:, 0:2]
  44. # print(X)
  45. X = X.apply(lambda x: pd.Series(date_format(x)), axis=1)
  46. Y = datas['Global_active_power']
  47. print(Y.head(4))
  48. print(X.head(4))
  49. print(type(X))
  50. print(type(Y))


  51. # 对数据集进行测试集、训练集划分
  52. # X:特征矩阵(类型一般是DataFrame)
  53. # Y:特征对应的Label标签或目标属性(类型一般是Series)
复制代码



最小二乘法求线性回归_案例.png (303.39 KB, 下载次数: 242)

最小二乘法求线性回归_案例.png

datas.zip

137.17 KB, 阅读权限: 198, 下载次数: 121

上课数据

让天下人人学会人工智能!人工智能的前景一片大好!
回复

使用道具 举报

0

主题

1

帖子

4

积分

新手上路

Rank: 1

积分
4
沙发
发表于 2019-11-5 07:33:27 | 只看该作者
这个非常好
回复

使用道具 举报

0

主题

96

帖子

202

积分

中级会员

Rank: 3Rank: 3

积分
202
板凳
发表于 2019-12-22 20:52:40 | 只看该作者
this is good idea
回复

使用道具 举报

0

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
地板
发表于 2020-2-25 12:03:49 | 只看该作者
从头开始学习学习ing
回复

使用道具 举报

0

主题

4

帖子

162

积分

2W人工智能培训

Rank: 10Rank: 10Rank: 10

积分
162
5#
发表于 2020-3-2 14:19:02 | 只看该作者
强啊。大佬。6666
回复

使用道具 举报

0

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
6#
发表于 2020-3-7 21:40:45 | 只看该作者
6666666666666
回复

使用道具 举报

0

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
7#
发表于 2020-3-7 21:41:11 | 只看该作者
以后就跟着大佬一起学习了
回复

使用道具 举报

0

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
8#
发表于 2020-3-16 15:53:52 | 只看该作者
那个scikit learn怎么搭建的,还是不太懂
回复

使用道具 举报

0

主题

24

帖子

54

积分

注册会员

Rank: 2

积分
54
9#
发表于 2020-3-17 12:37:58 | 只看该作者
66666666666
回复

使用道具 举报

0

主题

3

帖子

52

积分

注册会员

Rank: 2

积分
52
10#
发表于 2020-4-12 14:06:18 | 只看该作者
sklearn确实简单,但是从新手开始最好把源代码敲一遍,之后再用sklearn
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|人工智能工程师的摇篮 ( 湘ICP备2020019608号-1 )

GMT+8, 2024-4-20 10:54 , Processed in 0.193859 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表