pca投影图,excel做pca图

发表于 资讯中心

不少网友都想知道关于pca投影图和一些关于excel做pca图的题,今天小编为你带来详细的解说。

pca投影图

主成份剖析 PCA

本节作者刘华,祖国科学技术大-学

版本1.0.3,更新日期2020年6月18日

什麽是PCA(Principal Component Analysis)相干布景

在很多行业的钻研与使用中,平时须要对含有多个变量的数据举行观察,搜集批量数据后举行剖析寻求纪律拉。多变量大数据集无疑会为钻研和使用供给富厚的信息,可是也在肯定水平上增添了数据收罗的工作量了。更主要的是在许多情况下,很多变量之中应该存在相关性,从而增添了疑剖析的复杂性了。假如分-别对每一个指-标举行剖析,剖析常常是伶仃的,不可以一切使用数据中的信息,因而漫无目的减轻指-标会丧失许多有效的信息,从而发生差错的结果了。

因而须要找出1种恰当的办法,在减轻须要剖析的指-标同时间,尽量减少本指-标包罗信息的丧失,以到达对所搜集数据举行全部剖析的目标拉。因为各变量之中存在肯定的相干干系,因而能够思考将干系精密的变量成为尽可能少的新变量,使这一些新变量是二二不相干的,那样的就能够用较少的综合指-标分-别代表存在于各个变量中的各种信息啦。主成份剖析与因子分析就属于此类降维算法拉。

数据降维

降维便是1种对高维度特点数据预处理办法(NBT单细胞转录组新降维可视化办法PHATE)呀。降维是将高维度的数据保存下最主要的一些特点,祛除噪声和不主要的特点,从而完成提拔数据处理速率的目标了。在现实的出产和使用中,降维在肯定的信息丧失范畴内,能够为咋们节约批量的时候和本呀。降维也变成运用十分普遍的数据预处理办法啦。

降维拥有以下一些好处

(1) 使得数据集更易使用拉。(2) 下降算法的盘算开支呀。(3) 祛除噪声呢。(4) 使得结局简单领会拉。

降维的算法有许多,好比怪异值分-解(SVD).主成份剖析(PCA).因子分析(FA).自力成份剖析(ICA)呢。

PCA的观点

PCA(Principal Component Analysis),即主成份分析方法(一文看懂PCA主成份剖析),是1种运用最普遍的数据降维算法呀。

PCA的重要想法是将n维特点映照到k维上,这k维是全新的正交特点也被称为主成份,是在原有n维特点的根基上从新结构进去的k维特点呢。

PCA的事情就是从原始的空-间中顺着规律地找一组互相正交的坐标轴,新的坐标轴的挑选与数据自身是密切相关的了。这个里面,第一个新坐标轴抉择是原始数据中方差最大的方位,第二个新坐标轴采取是与第一个坐标轴正交的平面中使得方差最大的,第三个轴是与第1,2个轴正交的平面中方差最大的呢。顺次类推,能够获得n个这个样子的坐标轴了。经过这类方法获取的新的坐标轴,咋们发觉,多数方差都包罗在前边k个坐标轴中,以后的坐标轴所含的方差全部为0拉。因此,咋们能够疏忽余下的坐标轴,只保存前边k个含有绝大部分方差的坐标轴呀。事实上,这相当于只保存包罗绝大部分方差的维度特点,而疏忽包罗方差全部为0的特点维度,完成对数据特点的降维处置拉。

变更的措施

① 第一步盘算矩阵 X 的样本的协方差矩阵 S(此为不标-准PCA,标-准PCA盘算相关系数矩阵C) :

② 第二步盘算协方差矩阵S(或者C)的特征向量 e1,e2,…,eN和特征值t = 1,2,…,N;

③ 第三步投影数据到特征向量张成的空-间当中呀。使用公式

,这个里面BV值是本样本中对应维度的值了。

PCA 的目的是寻觅 r ( r<n )个新变量,使它们反应东西的重要特点,紧缩原有数据矩阵的范围,将特征向量的维数下降,挑选出至少的维数来归纳综合最主要特点啦。每一个新变量是原有变量的线性组合,表现原有变量的综合功效,拥有必定的现实含意拉。这 r 个新变量称为“主成份”,它们能够在太大水平上反应本来 n 个变量的影响,而且这一些新变量是互不相干的,也是正交的呀。经过主成份剖析,紧缩数据空-间,将多元数据的特点在低维空间里直观地表现进去呢。

PCA实例PCA+特点箭头

华大基因钻研团队揭晓于Microbiome的短文(Zhong et al., 2019),钻研初期事情和生涯方法对幼龄儿童肠道菌群和代谢的影响呀。在这里,咋们抉择了短文中2个PCA剖析结局图为例举行解说

图1c. 属水准PCA主成份剖析

Figure 1c. Genus-based principal component analysis (PCA) of children and adults.

结局PCA剖析揭露儿童和大人肠道菌群有无分明区分

Principal component analysis (PCA) based on genus profiles showed no separation between Dutch children and adults.

PCA+特点箭头+箱线图

图3. 多种初期事情和学龄前生涯方法与肠道菌群有关系呢。aPCA显现了儿童的多变量和区别原因对PC1和PC2的重要影响了。将包罗初期事情和学龄前生涯方法在内的18个原因举行PCA剖析,这个里面PC1或者PC2成份得分 ≥ 0.2的原因为重要影响原因呢。箱形图显现各肠型内PC1和PC2评分的整体分散(P<0.05; Wilcoxon rank-sum test).

结局咋们发觉母乳喂养持续时间.母亲教导水准和学前饮食形式,包罗摄取的蛋白质.纤维.及奶制品在PC1中奉献最多 (15.05%),PC2中儿童的碳水化合物和脂肪总摄入量是第二个最主要的变量 (12.74%)拉。E3组儿童的PC1得分低于E1组,但PC2得分高于E1组(图3a, Wilcoxon秩和检查,P < 0.05)呀。这类肠型间的差距是由PC1评分的重要原因决策的,如 E3组中较短的母乳喂养时候和较少的伙食纤维和植物性卵白摄入量 (Kruskal-Wallis检查, P < 0.05)拉。

We found that breastfeeding duration, educational level of mother at childbirth, and pre-school dietary patterns including intake of protein, fiber, and milk products contributed most to the variability in PC1 (15.05%, Fig. 3a), and total intake of carbohydrates and fat represented the second most important variation among children, as displayed in PC2 (12.74%, Fig. 3a). Interestingly, children in E3 exhibited lower PC1 scores but higher PC2 scores than children in E1 (Fig. 3a, Wilcoxon rank-sum test, P < 0.05). This inter-enterotype difference was governed by specific major contributors of the PC1 scores, including shorter breastfeeding duration and less intake of dietary fiber and plant-based protein in E3 as compared to the two other enterotypes (Kruskal-Wallis test, P < 0.05).

PCA+外形分组+门着色

例3Robert D. Finn团队揭晓于Nature的短文(Almeida et al., 2019),构建了人类肠道微生物群的基因组蓝图呀。

Fig 5未培育的物种拥有奇特的功效拉。a.以已知人类依照基因组(HGR553个基因组)和未分类物种宏基因组(UMGS1952个基因组)的基因组特征(Genome Properties, GPs)举行PCA主成份剖析,以门水准上色呢。

The uncultured species have a distinct functional capacity.a, Principal component analysis (PCA) based on GPs of the HGR (n = 553 genomes) and the UMGS (n = 1,952 genomes) coloured by phylum.

结局咋们运用GhostKOALA变成KEGG Orthology (KO)解释(Pathview包整合表明谱数据可视化KEGG通路),以跟踪区别UMGS和HGR汇合中特定功效种别的差距丰采了。在全世界范畴内,经过对GPs的分类构成剖析,发觉按门水准分类分散优良,希奇是拟杆菌门和变形菌门显现出奇特的功效特点了。

In parallel, we used GhostKOALA to generate KEGG Orthology (KO) annotations to track the differential abundance of specific functional categories across the UMGS and HGR sets. Globally, by analyzing the repertoire of GPs according to the taxonomic composition, we observed a good separation by phylum (ANOSIM R = 0.42, P < 0.001), with the Bacteroidetes and Proteobacteria taxa in particular displaying very distinctive functional profiles (Fig. 5a).

总结

PCA主成份图中坐标轴PC1/2的数值为整体差距的诠释率;图中点代表样板,色代表分组;箭头代表原始变量,这个里面方位代表原始变量与主成份的相关性,长度代表原始数据对主成份的贡献度拉。

作PCA,一开始的时候要构建特点/变量的协方差矩阵,随后对其特征值和特征向量举行排序,依照须要取前边最主要的部-分,将以后的维数省去,能够到达降维,从而到达简化模子或者对数据举行紧缩的功效,同时间最大水平的维持了原有数据的信息啦。

可是PCA道理重要是为了解除变量之中的相关性,而且假定这类相关性是线性的,关于非线性的依靠干系则不可以获得很好的结局拉。同时间PCA假定变量听从高斯分布,当变量不听从高斯分布(如均匀分布)时,会产生标准缩放与转动拉。

PCA画图实战

数据和代码下载以 https://github.com/YongxinLiu/MicrobiomeStatPlot 上的微生物组数据举行展现了。

用于盘算PCA 的R软件中供应了来源区别软件包的多个函数


prcomp()和princomp() [内置];
PCA() [ FactoMineR包];
dudi.pca() [ ade4包];
epPCA() [ ExPosition包]呀。

能够经过factoextraR包和ggbiplot包来放松提取和可视化PCA的结局拉。

安置PCA剖析与可视化R包

断定每一个依附的包是不是存在,有无则安置

34;FactoMineR&34;dplyr&34;factoextra&34;ggpubr&34;pca3d& 安置github起源R包suppressWarnings(suppressMessages(library(devtools)))if (么!requireNamespace(&34;, quietly = TRUE)) install_github(&34;)内置数据演示PCA绘制

library(&34;) 获取纯数值表格,祛除最终一行的分类别分组数据,iris <- select(iris, -Species) 检察对-象的称号,此处回返结局中5个列表的称号names(iris.pca)34;factoextra& 提取变量的剖析结局,加载包出-现在函数首次出-现前,晓得函数与包的干系get_pca_var(iris.pca)

factoextra包自带了提取变量的剖析结局get_pca_var函数,这个里面


coord表现用于建立散点图的变量坐标拉。coord实际上便是成份载荷,指观察变量与主成份的相关系数;
cor表现相关系数;
cos2表现因子品质,var.cos2 = var.coord * var.coord;
contrib表现包罗变量对主成份的奉献(百分比)呢。

34;black& 保留图片,指定图片为pdf样式便利以后修正,图片宽89毫米,高56毫米ggsave(paste0(&34;), p, width=89, height=56, units=&34;)ggsave(paste0(&34;), p, width=89, height=56, units=&34;)

图1. PCA展现变量与主成份之中的干系,和变量之中的失去联系

菌群数据实战

本次测试数据来源一样来源Science拟南芥三萜化合物特异调控根系微生物组数据截取了3个实验组各6个样板的结局用于演示呀。数据位于Data/Science2019大纲,本次须要元数据(metadata.txt)和otu表(otutab.txt)2个输出文件拉。

34;http://210.75.224.110/github/MicrobiomeStatPlot/Data/Science2019/& 读取元数据,参数指定包罗题目行(TRUE),列名为1列,制表符分开,无解释行,不转换为因子类别metadata <- read.table(paste0(dir, &34;), header=T, row.names=1, sep=&34;, comment.char=&34;, stringsAsFactors = F) 读取otu表otutab <- read.table(paste0(dir, &34;), row.names= 1, header=T, sep=&34;, comment.char=&34;, stringsAsFactors = F) 基于OTU表PCA剖析 基于OTU盘算PCA,履行数据标准化otu.pca <- prcomp(t(count), scale. = TRUE)贡献率图(scree plot)

假如咋们想推断PCA中须要几多个主成份对比好,那样的能够从主成份的特征值来思考(Kaiser-Harris原则倡议保存特征值大于1的主成份);特征值表现主成份所保存的变异量(所诠释的方差);如用get_eigenvalue函数来提取特征值,结局中第一列是特征值,第二列是可诠释变异的含量,第三列是累计可诠释变异的含量拉。

get_eigenvalue(otu.pca)[1:3,]

除特征值大于1作-为主成份个数的阈值外,还能够配置总变异的阈值(累计)作-为推断指-标呢。

除看表格来推断,还可从图形上直观的感觉下

34;p2.pca_screen.pdf&34;mm&34;p2.pca_screen.png&34;mm& 绘制变量PCA主成份剖析图(p <- fviz_pca_var(otu.pca, col.var = &34;, gradient.cols = c(&00AFBB&34;34;, &FC4E07&34;p3.pca_cos.pdf&34;mm&34;p3.pca_cos.png&34;mm& 样本PCA图,点长短为cos2,外形为21圆形,按组添补,repel防止标签重复(p <- fviz_pca_ind(otu.pca, pointsize = &34;, pointshape = 21, fill = metadata$Group, repel = TRUE))ggsave(paste0(&34;), p, width=89, height=56, units=&34;)ggsave(paste0(&34;), p, width=89, height=56, units=&34;)

图4. PCA图展现观察值,以cos2值来代表各个individuals点的圆圈长短呢。

假如有分组信息,则能够将同一组的individuals圈在一块,如

34;point& show points only ( not &34;) col.ind = metadata$Group, 34;34;, &E7B800&34;34;), addEllipses = TRUE, 34;Groups& 保留图片,指定图片为pdf样式便利以后修正,图片宽89毫米,高56毫米ggsave(paste0(&34;), p, width=89, height=56, units=&34;)ggsave(paste0(&34;), p, width=89, height=56, units=&34;)

图5. 样本PCA图按分组着色并增加相信椭圆

biplot样本和特点图

假如咋们想将特点变量(vars)和样本(individuals)同时间在一张biplot图中展现,那样的将要对重要的OTUs/ASVs/分类举行排序选择了。

展现重要差距ASV与主成份的干系

挑选mad(median absolute deviation,中位数误差的绝对值的中位数,权衡特异颠簸的办法)值大于0.5的ASV,mad.5 <- norm[apply(norm,1,mad)>0.5,] mad.5 <- head(norm[order(apply(norm,1,mad), decreasing=T),],n=6) 绘制观察值PCA主成份剖析图,外层()可对保留的图形同时间预览(p <- fviz_pca_biplot(otu.pca, col.ind = metadata$Group, palette = &34;, addEllipses = TRUE, label = &34;, col.var = &34;, repel = TRUE, legend.title = &34;))34;p6.sample_group_ellipse2.pdf&34;mm&34;p6.sample_group_ellipse2.png&34;mm& 加载ggbiplot并绘制观察值PCA主成份剖析图suppressWarnings(suppressMessages(library(&34;))) 保留图片,指定图片为pdf样式便利以后修正,图片宽89毫米,高56毫米ggsave(paste0(&34;), p, width=89, height=56, units=&34;)ggsave(paste0(&34;), p, width=89, height=56, units=&34;)

图7. ggbiplot可视化PCA结局

平常情形下,须要运用PERMANOVA来检查区别组样本间的微生物群落能否拥有明显差距

34;vegan& 以后在画图代码中将PERMANVOA结局在PCA图中举行展现(p1 <- p + geom_text(aes(x = - 5 , y = 4, label = paste(&34;, otu.adonis$aov.tab$`Pr(>F)`[1], sep = &34;)), size = 2, hjust = 0))ggsave(paste0(&34;), p1, width=120, height=100, units=&34;)ggsave(paste0(&34;), p1, width=120, height=100, units=&34;)

图8. PCA结局图增加PERMANOVA检查

PCA图x/y轴增添箱线图

在PCA图的x和y轴增添箱线图,能够完成进一步展现组间差距

34;sample&34;PC1&34;PC2&34;group& 这里须要ggpubr包,对组间举行统计检查和组合图的拼接library(&34;)39;KO&39;OE&39;OE&39;WT&39;KO&39;WT& 绘制y轴为PC1值的分组箱线图p2 <- ggplot(otu.pca.data, aes(x = group, y= PC1, colour = group)) + geom_boxplot() + theme(panel.background = element_rect(fill = &34;,colour = &34;), panel.grid = element_blank(), axis.text.y = element_blank(), legend.position=&34;) + xlab(&34;) + ylab(&34;) + stat_compare_means(comparisons = my_comparisons, label = &34;) 绘制y轴为PC2值的分组箱线图p3 <- ggplot(otu.pca.data, aes(x = group, y= PC2, colour = group)) + geom_boxplot(aes()) + theme(panel.background = element_rect(fill = &34;,colour = &34;), panel.grid = element_blank(), axis.text.x = element_blank(), legend.position=&34;) + xlab(&34;) + ylab(&34;) + coord_flip() + 34;p.signif& ggpubr::ggarrange()函数对图举行拼接(p4 <- ggarrange(p3, NULL, p1, p2, widths = c(5,2), heights = c(2,4), align = &34;))ggsave(paste0(&34;), p4, width=180, height=150, units=&34;)ggsave(paste0(&34;), p4, width=180, height=150, units=&34;)

图9. PCA图增加箱线图副图

还能够运用pca3d包对数据举行三维展现

pca3d包可视化PCA图

咋们还能够运用pca3d包对数据举行三维展现

suppressWarnings(suppressMessages(library(&34;)))# 绘制样本三维PCA图,分组着色,68%相信椭圆(p <- pca3d(otu.pca, group = metadata$Group, show.ellipses=TRUE, ellipse.ci=0.68, show.plane=FALSE))

会翻开新窗口,展现三维PCA图,并且可用鼠标托动旋转变换视察角度,变量p中保留了各组名.色 .外形称号和编号呢。

图10. 三维PCA图快照

注三维PCA图适宜交互摸索数据,但不可以导出矢量图,在发表文章中运用较少拉。

参考文献

Huanzi Zhong, John Penders, Zhun Shi, Huahui Ren, Kaiye Cai, Chao Fang, Qiuxia Ding, Carel Thijs, Ellen E. Blaak, Coen D. A. Stehouwer, Xun Xu, Huanming Yang, Jian Wang, Jun Wang, Daisy M. A. E. Jonkers, Ad A. M. Masclee, Susanne Brix, Junhua Li, Ilja C. W. Arts & Karsten Kristiansen. (2019). Impact of early events and lifestyle on the gut microbiota and metabolic phenotypes in young school-age children. Microbiome 7, 2, doi: https://doi.org/10.1186/s40168-018-0608-z

Alexandre Almeida, Alex L. Mitchell, Miguel Boland, Samuel C. Forster, Gregory B. Gloor, Aleksandra Tarkowska, Trevor D. Lawley & Robert D. Finn. (2019). A new genomic blueprint of the human gut microbiota. Nature 568, 499-504, doi: https://doi.org/10.1038/s41586-019-0965-1

责编刘永鑫,中科院遗传发育所

excel做pca图

经典类型的器量进修论文会提出一位新的丧失函数或者练习历程,随后在一些数据集上显现结局,如 CUB200.Stanford Cars 和 Stanford Online 成品了。每隔几个月,咋们都会看到准确度有所提高了。

这确实是太好了,但有几点要注重了。

这里有一张随机图

有一些论文比较对-象不一样

为了讲明1种新的算法优于现有的办法,维持尽量多的参数不改变是很主要的呢。这个样子,咋们能够肯定是新算法提升了功能,而不-是一位没有关系的参数提升了功能拉。可是在基准器量进修论文中并非如此

1.互联网架构并有无维持不改变啦。有一些论文用 GoogleNet,而近来几天的很多论文都在运用 BN-Inception,有的时候被称为 batch 标准化的开始「Inception with Batch Normalization」拉。2017 年一篇被普遍援用的论文运用 ResNet50,随后宣称获取了庞大的功能晋升啦。这是值得测的,由于与之比较的办法运用的是 GoogleNet,这是一位不太强大的架构啦。因而,多数功能提拔应该来源互联网架构的抉择,而不-是你们提出的办法呢。

2.图像增强并有无维持不改变了。大多数论文宣称运用如下变更将图象长短调理为 256 x 256,随机裁剪为 227 x 227,并以 50% 的概率举行水准翻转呀。但近来几天一些论文的开源完成讲明,你们实际上运用的是 GoogleNet 论文中描写的更繁杂的裁剪办法(见「训练方法」)呀。

3.功能晋升方法在论文中有无说起呢。在近来几天一篇 2019 年论文的开源代码中,骨干模子的 BatchNorm 参数在练习时期被冰冻呀。作者诠释说,这有助于减轻过分拟合,让 CUB200 数据集的功能提升 2 个点啦。但你们的论文中并有无提到这一点啦。

在 ImageNet 上事先练习的模子的准确性呀。运用 PCA 将输入嵌入长短减轻到 512呢。关于每一个图象,较小的边被缩放到 256,随后中间裁剪到 227x227了。

大多数论文运用的是简易的练习/尝试拆分

你们对一部分数据举行练习,找出在尝试集上体现最棒的模子,并报-告这一个数字呀。换句话说,它们不运用检验集拉。因而,超参数被调理,全部算法都是由尝试集的直-接反应建立的呢。这打-破了 Machine Learning 101 的最根本策划拉。另外,同一个模子练习/尝试分散的办法已运用多年呢。跟着时候的推移,这2个原因应该会致使尝试集的过分拟合呢。

因此让咋们准确地对这一些算法举行基准尝试

这便是强盛的基准尝试被用到的场合了。

为何要用这一个器械呢?

透明性呀。您运转的每一个试验都附带了一五一十的配置文件,这一些文件准确地显现了运用了哪一些模子.丧失.转换等等拉。因此如今咋们能够公正地对比种种办法的优缺点啦。

更好的功能权衡指-标呢。运用比回想更具信息性的指-标拉。

用准确的办法丈量精度啦。在多个基于类的练习/val/尝试分段上丈量精度拉。或许您能够运用旧的 50/50 练习/尝试拆分举行对比呀。

保留一五一十的纪录呀。在 Tensorboard 上检察有关系练习历程的深化信息了。

配置文件的灵活性呢。经过配置文件掌控试验的多数标-准呀。经过兼并现有的配置文件来扩大现有配置文件了。底下是怎么样指定模子的示例

models:

trunk:

bninception:

pretrained: imagenet

embedder:

MLP:

layer_sizes:

- 512

底下是怎么样兼并 3 个配置文件的办法

python run.py \

--experiment_name test \

--config_general default daml train_with_classifier

加重命令行的灵活性拉。运用标-准 Python 字典表示法指定繁杂设置选项

python run.py \

--experiment_name test \

--optimizers

更多实情,请检察相干 github 工作事情https://github.com/KevinMusgrave/powerful_benchmarker#override-config-options-at-the-command-line

算法的灵活性呀。混淆婚配丧失.函数.采样器和训练方法拉。要运用硬批处理的多相似性丧失呀?没疑

loss_funcs:

metric_loss:

MultiSimilarityLoss:

alpha: 0.1

beta: 40

base: 0.5

mining_funcs:

post_gradient_miner:

BatchHardMiner:

会见 torchvision 和 pretrainedmodels 包中的一切模子啦。在设置模子文件中,只需指定出-现在 torchvision 或者 pretrainedmodels 中的函数名啦。

获得 torch.nn 和 pytorch_metric_learning 中的全部丧失呢。在 config_loss_and_miners 文件中,只需指定出-现在 torch.nn 或者 pytorch_metric_learning 中的类名呢。

他确实有用吗呢?

下表是在 CVPR 2019 和 ICCV2019 上揭晓的一系列器量进修论文的结局拉。每种色代表区别的模子和嵌入长短设置呀。因为有无标-准的试验办法,非常难对比种种算法的功能了。这妨碍了研究进展,由于咋们不晓得哪种办法最有用拉。因而,主要的是要有一位基准器械,使咋们可以或许作公正的对比拉。

绿色BN-Inception,512;蓝色Blue: Resnet50, 128;Resnet50, 512;血色GoogleNet, 512啦。前 8 行的数字来源各自的论文呢。

要检察这一些试验和其余试验的配置文件,请参阅此电子表格,我将随时候增添到这个里面https://docs.谷歌.com/spreadsheets/d/1kiJ5rKmneQvnYKpVO9vBFdMDNx-yLcXV2wbDXlb-SB8/edit?usp=sharing

表格的底部是运用基准测试工具获取的结局啦。 triplet loss 和 contrastive loss 都靠近最新水准了。但是,这两种办法经常被清除在结局表以外,或许被以为是功能最差的办法之一呀。强盛的基准测试程序使搜查这一些基准算法变的简单拉。

写在最终

您对这一个器械的观点和器量进修的近况怎样看呢?假如您有任何疑或者想增加某些功效,请会见 GitHub repos 以理解强盛的 powerful_benchmarker和 pytorch_metric_learning 拉。

viahttps://medium.com/@tkm45/benchmarking-metric-learning-algorithms-the-right-way-90c073a83968

雷锋网雷锋网雷锋网

本文给大家介绍的一些关于pca投影图和excel做pca图的话题已经解完毕,希望大家喜欢。


发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。