,如何判别,是java自带的类/方法还是用户自己编程得到的.在命名方法上是不是可以区分出来.

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了,如何判别,是java自带的类/方法还是用户自己编程得到的.在命名方法上是不是可以区分出来.相关的知识,希望对你有一定的参考价值。

,如何判别,是java自带的类/方法还是用户自己编程得到的.在命名方法上是否可以区分出来.

参考技术A 准确的说是无法区别的, 因为用户可以重写javaAPI中的方法,所以无法判断,但一般情况下,如果用户遵循包名的命名规范, 不与javaAPI中的 包名冲突, 则可以通过 类的全路径名 来判断是否是 javaAPI中的类 参考技术B 我觉得 你可以通过包+ 类 来区别 。 你自己定义的包 你因该认得呀

其他的就是自带的了 哈哈哈

不太准确哈

靠经验了 呵呵
参考技术C 不行,一个是需要你自己的积累,然后就是参看java的api了。 参考技术D 这咋能完全准确的区分了。要是我刻意的使用和官方取名相似的命名方式咋办。

R语言如何进行线性判别分析?

    判别分析是一种有监督的训练方法。对于线性判别,先是将样本点投影到一维空间,也就是直线上,若效果不明显,就可以考虑增加一个维度,变成二维空间,如果还是不明显,就继续增加维度。

    在R语言中,MASS软件包中的lda()是实现线性判别的核心函数。下面将通过一个简单实例来进行介绍。



1 读取数据集。

sz_data=read.csv("sz_data.csv",head=T,encoding="utf-8")

head(sz_data);dim(sz_data) #查看数据的前几行和数据维度

2  进行数据预处理。在实际应用中,如果数据有缺失值,需要先按照一定的方法先对缺失值进行处理。这里我们直接划分训练集和测试集,并且随机抽取70%的样本作为训练集。

n=0.7*nrow(sz_data) #作为训练集的样本量

sub_train=sample(nrow(sz_data),n)#随机抽取n个样本

data_train=sz_data[sub_train,-1]#训练集

data_test=sz_data[-sub_train,-1]#测试集

head(data_train);dim(data_train)

head(data_test);dim(data_test)

R语言如何进行线性判别分析?

3  线性判别分析。没有MASS安装包的要先安装MASS包。

fit_lda1=lda(is_rise~.,data_train) #判别分析公式

names(fit_lda1) #查看lda()可给出的输出项名称

fit_lda1$prior #查看本次执行过程中所使用的先验概率

fit_lda1$counts #查看数据集data_train中各类别的样本量

fit_lda1$means #查看各变量在每一类别中的均值

fit_lda1 #输出判别分析的各项结果

plot(fit_lda1) #判别规则可视

从运行结果可以看出,本次线性判别将样本点投射到了一维空间(LD1)。结果中展示了先验概率、各类别样本量,以及各变量在每一类别中的均值。

图形中展示了is_rise取值为0和1时,分布具有一定的差异性。

R语言如何进行线性判别分析?R语言如何进行线性判别分析?

4  对测试集进行预测。

pre_lda1=predict(fit_lda1,data_test)

data_test$pre_rise=pre_lda1$class #输出类别预测结果

head(data_test) #查看含有预测结果的数据

验证模型准确性。

table(data_test$is_rise,pre_lda1$class) #生成is_rise的预测值和实际值的混淆矩阵

error_lda1=sum(pre_lda1$class!=data_test$is_rise)/nrow(data_test);error_lda1#计算错误率

混淆矩阵中,对角线上的数据是被准确判别了的。计算出的错误率在15%以下,具有较高的准确性。

以上是关于,如何判别,是java自带的类/方法还是用户自己编程得到的.在命名方法上是不是可以区分出来.的主要内容,如果未能解决你的问题,请参考以下文章

java调用jar包中的类

R语言如何进行线性判别分析?

Java基础9-java的类对象和方法

Fisher线性判别

用Fisher线性判别方法和SVM线性分类面法求两类样本的分类面

MySQL如何判别InnoDB表是独立表空间还是共享表空间