首页
学习
活动
专区
圈层
工具
发布

技能跨界:小白炼成动植物学家?

“数据时代的到来了,一个数据小白也可以炼成动植物学家” ,你是不是惊讶之余带着一丝不屑嗤之以鼻呢?先放下你的小脾气,预留10分钟的时间,我带你探索真真相,耐心看完全文:

文章目录:

1,动植物学家的定义和工作内容

2,数据小白挑战动物植物学家

3,盖棺定论

1,动植物学家的定义和工作内容

什么是动植物学家呢?

植物学家,研究植物的形态、分类、生理、生态、分布、发生、遗传、进化等的科学家。动物学家,研究动物的生理、分类、生态、动物驯化等等。

动植物学家的主要工作是什么呢?

从动植物学家的定义 可知动物植物学家们的主要工作是分类,分类的过程可以简单的描述为:动植物数据的收集,动植物数据的整理,动植物数据的观察,种族内部相似特征的抽取,种族间差异特征的归纳,然后结论的检验,在重新数整理数据,不断迭代的研究过程。

2,数据小白挑战动物植物学家

数据小白为什么不能做动植物的分类工作吗?

挑战第一项工作:新捕捉A001类昆虫分辨:是雌性?还是雄性呢?

第一步:我们收集A001类昆虫历史的样本数据,分成雌性一组为:G1,雄性一组为:G2。我们本着组内找相似,组间找差异的原则:我们观察G1和G2两种昆虫的体长和翅长存在显著的差异,于是我们测量各组每一只昆虫的体长:m,翅长:n,二元组合(m,n);

计算整理:雌性昆虫的标准值, 雄性性昆虫的标准值,两组共同的协方差分别如下:

新昆虫测量:体长为:7.2,翅长为:5.6:

到此,数据对照之下,你是不是有自己的答案了呢?为严谨一些我们需要进一步计算:俗话有云:“近朱者赤,近墨者黑”,测量新昆虫到两组距离的远近,我们就可以做一些靠谱的判断,这里采用马氏距离计算公式:

计算结果为:-0.053<0, 所以 新昆虫离组G2更近,判断新昆虫为雄性。

不要为计算骚挠:R工具快速完成:

代码语言:javascript
代码运行次数:0
复制
> W2equal = function(x, mu1, mu2, S){(mahalanobis(x, mu2, S) - mahalanobis(x,mu1,S))/2}
> mu1=c(6,5); mu2=c(8,6); S = matrix(c(9,2,2,4),nrow=2);x=c(7.2,5.6)
> W2equal(x, mu1,mu2, S)
[1] -0.053125

由结果 -0.053125 小于 0,所以判别这是一只雄性昆虫。

挑战第二项工作:一束鸢尾花的品种?

R工具种自带有著名的名鸢尾花(iris)数据,3个品种鸢尾花数据各有50行数据,

每一行数据包括:(花萼长度, 花萼宽带,花瓣长度,花瓣宽度,品种)

四种特征对应一个品种,四种特征我们可以相信成四维空间中的点,四维是什么鬼,顿时凌乱了,稳住我们能赢:我们是不是可以转换看问题的角度,抓住重点,将四维变三维,再将三位变成二维呢?

举个例子:将二维转成一维线性,图中红,蓝表是不同种类的数值点,无论我们从垂直于横轴(x)的角度,还是从垂直纵轴(y)的角度我们无法好好的将红,蓝两个种类分开,当我们反复不断调整角度时,惊喜的发现从垂直直线(z)的角度去看,红蓝的数值点在直线(z)上的分布存在明显的差异(距离)。我们可以完美的将 二维的点降为到了一条直线上。同理:我们也可以将更高维的数据降维,换一个角度看问题,其实问题没有那么复杂,也许我们和专家的差距就在一个角度上。这也是著名的fisher判别的思想,转换角度长称为一种投影:

运用fisher的判别算法,我们鸢尾花(iris)数据进行投影,将四个因素转成两个主因素,训练主因素判别的效果,如果效果好,我们就有信心,有把握判别一束鸢尾花的品种,了解思想很重要,计算的工作就交给我们的伟大的计算机吧。

R:软件中自带著名鸢尾花(iris)数据:

通过投影方法画出了模型图(三个品种鸢尾花的模型图:

代码语言:javascript
代码运行次数:0
复制
> data(iris)
> attach(iris)
> library(MASS)
> ld = lda(Species~Sepal.Length+
Sepal.Width+Petal.Length+Petal.Width)
> ld
Call:
lda(Species ~ Sepal.Length + Sepal.Width + Petal.Length + 
Petal.Width)
Prior probabilities of groups:
    setosa versicolor  virginica 
 0.3333333  0.3333333  0.3333333 

Group means:
           Sepal.Length Sepal.Width Petal.Length Petal.Width
setosa            5.006       3.428        1.462       0.246
versicolor        5.936       2.770        4.260       1.326
virginica         6.588       2.974        5.552       2.026

Coefficients of linear discriminants:
                    LD1         LD2
Sepal.Length  0.8293776  0.02410215
Sepal.Width   1.5344731  2.16452123
Petal.Length -2.2012117 -0.93192121
Petal.Width  -2.8104603  2.83918785

Proportion of trace:
   LD1    LD2 
0.9912 0.0088 
> Z = predict(ld)
> newG = Z$class
> cbind(Species, newG, Z$x)
> tab = table(newG, Species)
> tab
            Species
newG         setosa versicolor virginica
  setosa         50          0         0
  versicolor      0         48         1
  virginica       0          2        49

> plot(ld)> plot(fit_lda1,dimen=1)
#data_test 表示一组新花数据,预测判别
predict(ld,data_test) pre_ldal[1:length(ld)]
由结果可知,对原始150个数据的预测中,由3个判别错误,误差率为2%,我们
很有信心的拿新模型判别一束鸢尾花品种。

3,盖棺定论

随着社会的发展,计算机技术的不断革新,我们的原有的工作界限被打破了,数据的在不同的领域的作用越来越强烈,一个优秀的数据工作者的价值越来越重要,他们的跨界能力随着数据量和处理数据的能力在不断的增强,我们有理由相信一个不关心数据价值的工作者将会被“数据的时代”淘汰,拥抱数据,拥抱变化,迎接新的一天。

下一篇
举报
领券