机器学习之路-ChapterOne

本博客是作为自己在学习机器学习的过程中的一些知识点的记录,因此比较零碎。主要是对知识点进行记录,以便后续复习。

一、代码段一

代码段如下

import numpy as np

vec1=np.array([1,2,3,])
vec2=np.array([4,5,6])

#欧式距离
assert np.linalg.norm(vec1-vec2)==np.sqrt(np.sum(np.square(vec1-vec2)))

知识点一、np.linalg.norm(求范数)

1、linalg=linear(线性)+algebra(代数),norm则表示范数。

①x: 表示矩阵(也可以是一维)

②ord:范数类型

向量的范数:

在这里插入图片描述
矩阵的范数:

ord=1:列和的最大值

ord=2:|λE-ATA|=0,求特征值,然后求最大特征值得算术平方根

ord=∞:行和的最大值

③axis:处理类型

axis=1表示按行向量处理,求多个行向量的范数

axis=0表示按列向量处理,求多个列向量的范数

axis=None表示矩阵范数。

④keepding:是否保持矩阵的二维特性

True表示保持矩阵的二维特性,False相反

以上面的代码演示一下这三种范数的类型
在这里插入图片描述

二、代码段二

下面代码的目的式将

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn import datasets    #dataSets: sklearn 的示例数据集

#加载数据集
scikit_iris=datasets.load_iris()
#转换成pandas的DataFrame数据格式,方便观察
iris=pd.DataFrame(data=np.c_[scikit_iris['data'],scikit_iris['target']],columns=np.append(scikit_iris.feature_names,['y']))
#查看前两行数据行
iris.head(2)
#查看数据的缺失情况。
iris.isnull().sum()

使用Juypter,可以清晰的显示出数据

1.加载的数据集。
scikit_iris是加载后的数据。从下面的显示可以看出(数据太长,分开截图的),scikit_iris的数据结构是字典。它的key包括data,target,target_names。键的值存储在array中。
在这里插入图片描述
在这里插入图片描述
下列代码式将上面的scikit_iris数据从字典形式转换成pandas 中的DataFrame数据结构,转换后的数据结构如下图所示(部分截图):

iris=pd.DataFrame(data=np.c_[scikit_iris['data'],scikit_iris['target']],columns=np.append(scikit_iris.

在这里插入图片描述

涉及的函数用法

np.c_的用法

np.c_是按列连接两个矩阵,就是把两矩阵左右相加,要求行数相等

np.c_的详细用法:https://blog.csdn.net/luguojiu/article/details/102894327

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值