博文

目前显示的是 一月, 2018的博文

数据预处理

##  5.1 数据抽样 # 5.1.2 类失衡处理方法:SMOTE # 利用Thyroid Disease 数据来研究 # 下载数据 hyper <-read.csv('http://archive.ics.uci.edu/ml/machine-learning-databases/thyroid-disease/hypothyroid.data',                  header=F) names <- read.csv('http://archive.ics.uci.edu/ml/machine-learning-databases/thyroid-disease/hypothyroid.names',                   header=F, sep='\t')[[1]] # 对对象names删除冒号和句号 names <- gsub(pattern =":|[.]", replacement="", x = names) # 对对象hyper的列进行重命名 colnames(hyper)<-names colnames(hyper) # 我们将第一列的列名从 hypothyroid, negative改成target,并将该列中的因子negative变成0,其他值变成1 colnames(hyper)[1]<-"target" colnames(hyper) hyper$target<-ifelse(hyper$target=="negative",0,1) # 检查下0、1的结果 table(hyper$target) prop.table(table(hyper$target)) # 利用SMOTE对类失衡问题进行处理 # 将变量target变成因子型 hyper$target <- as.factor(hyper$target) # 加载DMwR包 if(!require(DMwR)) install.packages("DMwR") # 进行类失衡处理 # perc.over=10

win10 自定义希腊字母

1、运行charmap.exe,找到对应的希腊字母,复制。 2、用户自定义短语 chi  粘贴

R语言特征选择

图片
ibrary(Boruta) library(mice) library(missForest) library(caret) library(randomForest) Boruta 法 boruta 算法运行的步骤: 1. 首先,它通过创建混合副本的所有特征(即阴影特征)为给定的数据集增加了随机性。 2. 然后,它训练一个随机森林分类的扩展数据集,并采用一个特征重要性措施(默认设定为平均减少精度),以评估的每个特征的重要性,越高则意味着越重要。 3. 在每次迭代中,它检查一个真实特征是否比最好的阴影特征具有更高的重要性(即该特征是否比最大的阴影特征得分更高)并且不断删除它视为非常不重要的特征。 4. 最后,当所有特征得到确认或拒绝,或算法达到随机森林运行的一个规定的限制时,算法停止。 traindata <- read.csv ( "/home/xuelfiang/PycharmProjects/titanic/titanic.csv" , header = T, stringsAsFactors = F, na.strings = T) str (traindata) ## 'data.frame': 891 obs. of 12 variables: ## $ PassengerId: int 1 2 3 4 5 6 7 8 9 10 ... ## $ Survived : int 0 1 1 1 0 0 0 0 1 1 ... ## $ Pclass : int 3 1 3 1 3 3 1 3 3 2 ... ## $ Name : chr "Braund, Mr. Owen Harris" "Cumings, Mrs. John Bradley (Florence Briggs Thayer)" "Heikkinen, Miss. Laina" "Futrelle, Mrs. Jacques Heath (Lily May Peel)" ... ## $ Sex : chr "male" &quo