当前位置: 首页 > news >正文

个人建设网站要钱吗郑州做网站哪里便宜

个人建设网站要钱吗,郑州做网站哪里便宜,游戏推广引流渠道,广州海珠建网站的公司此代码以数据集鸢尾花为例#xff0c;对其使用PCA降维后#xff0c;绘制了三个类别的样本点和对应的置信圆#xff08;即椭圆#xff09;。先放效果图。 下面是完整代码#xff1a; from matplotlib.patches import Ellipsedef plot_point_cov(points, nstd3, axNone, **…此代码以数据集鸢尾花为例对其使用PCA降维后绘制了三个类别的样本点和对应的置信圆即椭圆。先放效果图。 下面是完整代码 from matplotlib.patches import Ellipsedef plot_point_cov(points, nstd3, axNone, **kwargs):# 求所有点的均值作为置信圆的圆心pos points.mean(axis0)# 求协方差cov np.cov(points, rowvarFalse)return plot_cov_ellipse(cov, pos, nstd, ax, **kwargs)def plot_cov_ellipse(cov, pos, nstd3, axNone, **kwargs):def eigsorted(cov):cov np.array(cov)vals, vecs np.linalg.eigh(cov)order vals.argsort()[::-1]return vals[order], vecs[:, order]if ax is None:ax plt.gca()vals, vecs eigsorted(cov)theta np.degrees(np.arctan2(*vecs[:, 0][::-1]))width, height 2 * nstd * np.sqrt(vals)ellip Ellipse(xypos, widthwidth, heightheight, angletheta, **kwargs)ax.add_artist(ellip)return ellip画置信圆 def show_ellipse(X_pca, y, pca, flag1):# 定义颜色colors [tab:blue, tab:orange, seagreen]regions [Ethiopia, Somalia, Kenya]# 定义分辨率plt.figure(dpi300, figsize(8, 6))# 三分类则为3for i in range(0, 3):pts X_pca[y int(i), :]new_x, new_y X_pca[yi, 0], X_pca[yi, 1]plt.plot(new_x, new_y, ., colorcolors[i], labelregions[i], markersize14)plot_point_cov(pts, nstd3, alpha0.25, colorcolors[i])# 添加坐标轴plt.xlim(-3.5, 4.5)plt.ylim(-1.5, 1.7)plt.xticks(size16, familyTimes New Roman)plt.yticks(size16, familyTimes New Roman)font {family: Times New Roman, size: 16}plt.xlabel(PC1 ({} %).format(round(pca.explained_variance_ratio_[0] * 100, 2)), font)plt.ylabel(PC2 ({} %).format(round(pca.explained_variance_ratio_[1] * 100, 2)), font)plt.legend(prop{family: Times New Roman, size: 9}, locupper right)plt.show()import pandas as pd from sklearn.decomposition import PCA import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_iris labels [setosa, versicolor, virginica] iris load_iris() X iris.data y iris.target_names[iris.target]print(y length--------, len(y)) y_category pd.Categorical(y,orderedTrue,categories[setosa, versicolor, virginica])y y_category.codes print(y) print(y.shape) print(type(y[0])) n_components 2 pca PCA(n_componentsn_components) X_pca pca.fit_transform(X) show_ellipse(X_pca, y, pca) 下面讲解实现过程。  首先导入需要的库和数据集 import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_iris from matplotlib.patches import Ellipse然后定义了一个函数 plot_point_cov()用于计算样本点的协方差矩阵并调用另一个函数 plot_cov_ellipse()绘制置信椭圆。 代码中的cov变量是用于计算数据集协方差矩阵的。协方差矩阵用于描述多个变量之间的关系其中对角线上的元素表示每个变量本身的方差非对角线上的元素表示不同变量之间的协方差。 在函数plot_cov_ellipse()中使用协方差矩阵计算数据集的特征向量和特征值。特征向量和特征值用于确定椭圆的大小和方向以便绘制置信椭圆。 因为在二维空间中椭圆的方向和大小可以用特征向量和特征值来描述。例如对于一个2x2的协方差矩阵cov它有两个特征向量和两个特征值分别表示数据集在两个主要方向上的方差和偏移。特征向量的方向决定了椭圆的主轴方向而特征值的大小则决定了椭圆沿每个主轴的长度。 在函数plot_cov_ellipse()中先使用np.linalg.eigh()函数计算协方差矩阵cov的特征值和特征向量然后按特征值从大到小的顺序排序这样可以确保主轴方向是正确的。然后根据主轴方向的角度和特征值计算椭圆的宽度和高度进而绘制置信椭圆。函数np.degrees()用于将弧度转换为角度函数np.arctan2()用于计算角度。 np.degrees() 该函数使用的公式角度弧度*180/pi np.degrees() 函数的参数是 np.arctan2(*vecs[:, 0][::-1])它表示计算向量 vecs 中第一列即下标为 0 的列的极角即与 x 轴的夹角并将结果转换为角度制。 具体来说vecs[:, 0] 表示选取 vecs 中所有行的第一列组成的向量[::-1] 表示将该向量反转从而得到与 arctan2 函数所需的参数格式一致的向量。 然后np.arctan2() 函数接收两个参数表示计算以这两个参数组成的向量为起点与原点连接的向量的极角。这里第一个参数是反转后的向量即 vecs[:, 0][::-1]第二个参数未给出因此默认为 1。 最后np.degrees() 函数将弧度制的极角值转换为角度制。因此整个代码行的作用是计算向量 vecs 的第一列的极角并将结果转换为角度制。 vals, vecs eigsorted(cov)其目的是计算输入协方差矩阵的特征值和特征向量并返回排好序的结果。 特征值eigenvalues是协方差矩阵的一个重要属性代表着每个特征向量的方差。在PCA中特征值告诉我们每个主成分解释方差的大小。排序特征值后我们可以选择最大的K个特征值来保留大部分数据的方差。 特征向量eigenvectors是PCA中另一个重要的概念它们是协方差矩阵的正交基向量。每个特征向量对应着一个特征值。它们可以用来表示主成分的方向PCA中的主成分就是按特征值大小排序后的特征向量。PCA的主要目的就是通过旋转坐标系来最大化每个主成分方差。 特征向量在这里被用来求出主成分的方向。在函数中特征向量通过 vecs[:, order] 得到 [:, order] 表示选中所有行 : 和按照特定顺序排序的所有列 order 。这些特征向量就是主成分方向的坐标轴可以用来画出置信区间椭圆的角度。 椭圆的角度可以通过主成分方向的坐标轴与水平轴的夹角得到。在给定的代码中 theta 被计算为 np.degrees(np.arctan2(*vecs[:, 0][::-1]))其中 arctan2() 计算向量的反正切值 [::-1] 表示按照相反的顺序取向量的元素。 np.degrees() 将弧度转换为角度。 def plot_point_cov(points, nstd3, axNone, **kwargs):# 求所有点的均值作为置信圆的圆心pos points.mean(axis0)# 求协方差矩阵cov np.cov(points, rowvarFalse)return plot_cov_ellipse(cov, pos, nstd, ax, **kwargs)def plot_cov_ellipse(cov, pos, nstd3, axNone, **kwargs):def eigsorted(cov):cov np.array(cov)vals, vecs np.linalg.eigh(cov)order vals.argsort()[::-1]return vals[order], vecs[:, order]if ax is None:ax plt.gca()vals, vecs eigsorted(cov)theta np.degrees(np.arctan2(*vecs[:, 0][::-1]))width, height 2 * nstd * np.sqrt(vals)ellip Ellipse(xypos, widthwidth, heightheight, angletheta, **kwargs)ax.add_artist(ellip)return ellip最后定义了一个函数 show_ellipse()用于绘制样本点和置信椭圆。 画置信圆 def show_ellipse(X_pca, y, pca, flag1):# 定义颜色colors [tab:blue, tab:orange, seagreen]regions [Ethiopia, Somalia, Kenya]# 定义分辨率plt.figure(dpi300, figsize(8, 6))# 三分类则为3for i in range(0, 3):pts X_pca[y int(i), :]new_x, new_y X_pca[yi, 0], X_pca[yi, 1]plt.plot(new_x, new_y, ., colorcolors[i], labelregions[i], markersize14)plot_point_cov(pts, nstd3, alpha0.25, colorcolors[i])# 添加坐标轴plt.xlim(-3.5, 4.5)plt.ylim(-1.5, 1.7)plt.xticks(size16, familyTimes New Roman)plt.yticks(size16, familyTimes New Roman)font {family: Times New Roman, size: 16}plt.xlabel(PC1 ({} %).format(round(pca.explained_variance_ratio_[0] * 100, 2)), font)plt.ylabel(PC2 ({} %).format(round(pca.explained_variance_ratio_[1] * 100, 2)), font)plt.legend(prop{family: Times New Roman, size: 9}, locupper right)plt.show() 以数据集鸢尾花为例进行PCA降维并使用上面代码画置信圆。 import pandas as pd from sklearn.decomposition import PCA import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_iris labels [setosa, versicolor, virginica] iris load_iris() X iris.data y iris.target_names[iris.target]print(y length--------, len(y)) y_category pd.Categorical(y,orderedTrue,categories[setosa, versicolor, virginica])y y_category.codes print(y) print(y.shape) print(type(y[0])) n_components 2 pca PCA(n_componentsn_components) X_pca pca.fit_transform(X) show_ellipse(X_pca, y, pca) 上面解析均为学习使用如有问题请指正。
http://www.dnsts.com.cn/news/251970.html

相关文章:

  • 怎么样注册自己的网站做网站需要登录什么软件
  • 基于云平台网站群建设wordpress没有外观
  • 通付盾 建设网站公司互联网营销推广公司
  • 优秀网站设计要素杰瑞网站建设
  • 成都网站建设桔子免费网站的平台
  • 服装官网网站建设建站工具帝国
  • 湛江专业建站联系方式wordpress导航菜单函数
  • 局域网建设网站工具建设公司网站开发方案
  • 沈阳地区精神文明建设网站网站建设工作部署会
  • 12380网站建设的意见建议wordpress图片 高清
  • 网站开发页面设计报价十大app软件下载入口
  • 成熟的网站怎么做seo推广手机怎样创建网站
  • 郑州众诚建设监理有限公司网站个人网站设计理念
  • 咸阳网站建设专业公司自己的wordpress
  • 制作简单门户网站步骤旅游网站建设策划书范文
  • 58同城 网站建设电子商务网站建设与管理课程论文
  • 网站上传的图片怎么做的清晰品牌推广渠道
  • 用什么l软件做网站了网站备案 企业
  • 高新区网站建设 意义网站优化排名易下拉软件
  • 一般在百度做网站多少钱济南建网站的网站
  • 天津哪里可以做网站品牌建设年 启动
  • 最简单的制作网站深圳网站设计服务公
  • 用canvas做网站河南省建设劳动学会网站
  • 关于网站开发的会议纪要长沙做医院的网站建设
  • 怎样设计一个网站平台淘宝做标题网站
  • 网站建设可行性的分析wordpress比较好的建议
  • 杭州响应式网站教育局网站建设方案
  • 做签名照的网站韩国手做配件网站
  • 建设部职称证书查询官方网站软件开发公司好的有哪些
  • 优化好的网站做企业网站效果图案例网站