Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python scikit lda与R.MASS.lda报告相同(痕量比例)_Python_R_Scikit Learn - Fatal编程技术网

Python scikit lda与R.MASS.lda报告相同(痕量比例)

Python scikit lda与R.MASS.lda报告相同(痕量比例),python,r,scikit-learn,Python,R,Scikit Learn,在R中运行LDA,如下所示: iris = read.table("https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data", sep=",") library("MASS") mylda = lda(iris$V5~iris$V1+iris$V2+iris$V3+iris$V4) mylda 提供以下输出报告: Call: lda(iris$V5 ~ iris$V1 + iris$V2 + iris$V

在R中运行LDA,如下所示:

iris = read.table("https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data", sep=",")
library("MASS")
mylda = lda(iris$V5~iris$V1+iris$V2+iris$V3+iris$V4)
mylda
提供以下输出报告:

Call:
lda(iris$V5 ~ iris$V1 + iris$V2 + iris$V3 + iris$V4)

Prior probabilities of groups:
    Iris-setosa Iris-versicolor  Iris-virginica 
      0.3333333       0.3333333       0.3333333 

Group means:
                iris$V1 iris$V2 iris$V3 iris$V4
Iris-setosa       5.006   3.418   1.464   0.244
Iris-versicolor   5.936   2.770   4.260   1.326
Iris-virginica    6.588   2.974   5.552   2.026

Coefficients of linear discriminants:
               LD1         LD2
iris$V1  0.8192685  0.03285975
iris$V2  1.5478732  2.15471106
iris$V3 -2.1849406 -0.93024679
iris$V4 -2.8538500  2.80600460

Proportion of trace:
   LD1    LD2 
0.9915 0.0085 
> mylda
Call:
lda(iris$V5 ~ iris$V1 + iris$V2 + iris$V3 + iris$V4)

Prior probabilities of groups:
    Iris-setosa Iris-versicolor  Iris-virginica 
      0.3333333       0.3333333       0.3333333 

Group means:
                iris$V1 iris$V2 iris$V3 iris$V4
Iris-setosa       5.006   3.418   1.464   0.244
Iris-versicolor   5.936   2.770   4.260   1.326
Iris-virginica    6.588   2.974   5.552   2.026

Coefficients of linear discriminants:
               LD1         LD2
iris$V1  0.8192685  0.03285975
iris$V2  1.5478732  2.15471106
iris$V3 -2.1849406 -0.93024679
iris$V4 -2.8538500  2.80600460

Proportion of trace:
   LD1    LD2 
0.9915 0.0085 
通过scikit在python中执行LDA:

from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
mylda = LinearDiscriminantAnalysis().fit(iris.loc[:, 0:3], iris.loc[:, 4])
print(mylda.priors_)
print(mylda.means_)
print(mylda.scalings_)
到目前为止,它产生以下输出:

array([ 0.33333333,  0.33333333,  0.33333333])
array([[ 5.006,  3.418,  1.464,  0.244],
       [ 5.936,  2.77 ,  4.26 ,  1.326],
       [ 6.588,  2.974,  5.552,  2.026]])
array([[-0.81926852,  0.03285975],
       [-1.5478732 ,  2.15471106],
       [ 2.18494056, -0.93024679],
       [ 2.85385002,  2.8060046 ]])

如何获取/打印由R的LDA在python中打印的“跟踪比例?”

可以使用以下方法找到线性描述的效果:

trans=mylda.transform(iris.loc[:, 0:3])

谢谢但我认为R所称的“线性判别系数”是scikit中由
mylda
scalings\uucode>成员给出的比例。