Hata alıyorum Error in eval(predvars, data, env) : object 'B' not found
. Bu çizgiyi nasıl yapacağımdan emin değilim:
nn <- neuralnet(B+M~ area+texture+smoothness, data=cancertrain, hidden=3,
B + M, benign veya malign olmak üzere iki potansiyel değerdir ve belirlemede daha fazla etkiye sahip olan üç özellik alan, doku ve düzgünlüktür. Neuralnet işlevindeki parametrelerin yanlış yapıldığını varsayıyorum, bilen var mı? İşte herkese açık bir Google e-tablosunda kanser veri kümesi.
library(neuralnet)
library(ISLR)
library(rpart)
library(rpart.plot)
library(caTools)
library(random)
#setwd("**change to your working directory**")
data <- read.csv("WDBC.csv", header=T)
#head(data)
cancer.dataset <- data
#according to previous models and studies, area, texture, and smoothness are the
#attributes with the highest relevance to the diagnosis of benign or malignant
cancer.dataset$b <- cancer.dataset$Diagnosis == "B"
cancer.dataset$m = cancer.dataset$Diagnosis == "M"
cancer.dataset$area <- cancer.dataset$Diagnosis == "area"
cancer.dataset$texture = cancer.dataset$Diagnosis == "texture"
cancer.dataset$smoothness = cancer.dataset$Diagnosis == "smoothness"
cancerdata <- data.frame(cancer.dataset$Diagnosis, cancer.dataset$texture, cancer.dataset$smoothness, cancer.dataset$area)
cancerdata
train <- sample(x = nrow(cancerdata), size = nrow(cancerdata)*0.5)
train
cancertrain <- cancer.dataset[train,]
cancervalid <- cancer.dataset[-train,]
print(nrow(cancertrain))
print(nrow(cancervalid))
nn <- neuralnet(B+M~ area+texture+smoothness, data=cancertrain, hidden=3,
rep = 2, err.fct = "ce", linear.output = F, lifesign = "minimal", stepmax = 10000000)
Profesör tarafından verilen doğru bir örnek, standart Irıs veri kümesini kullanarak neye benziyor, bunun nasıl yapıldığına bağlı olarak benimkini doğru yapıp yapmadığımdan emin değilim:
iris.dataset$setosa <- iris.dataset$Species=="setosa"
iris.dataset$virginica = iris.dataset$Species == "virginica"
iris.dataset$versicolor = iris.dataset$Species == "versicolor"
train <- sample(x = nrow(iris.dataset), size = nrow(iris)*0.5)
train
iristrain <- iris.dataset[train,]
irisvalid <- iris.dataset[-train,]
print(nrow(iristrain))
print(nrow(irisvalid))
nn <- neuralnet(setosa+versicolor+virginica ~ Sepal.Length + Sepal.Width, data=iristrain, hidden=3,
rep = 2, err.fct = "ce", linear.output = F, lifesign = "minimal", stepmax = 10000000)
plot(nn, rep="best")