0

R-cranでツリー パッケージを使用しようとしています。次のようにcsvファイルをロードしています:

data <- read.csv("C:/data2.csv", header = FALSE, sep = ";",dec = ".")

ファイルの最後の列は、クラスを表します。それは正しいですか?

私の質問は、ファイルの最初または最後の列でクラスを表す必要があることです。ありがとうございます。

   V1        V2     V3    V4      V5           CLASS
'X0000002'  NULL    0   NULL    'BETA'          1
'Y0034195'  NULL    2   NULL    'INTERNAL'      1
'X0000001'  NULL    0   NULL    'BETA'          2
'X0000002'  NULL    0   NULL    'BETA'          2
'X0000002'  NULL    0   NULL    'BETA'          2
'Y0034195'  NULL    0   NULL    'INTERNAL'      2

訂正 OK 24 個の記述子 V1...V24 があります。クラスはV24です。R Cran で Rpart ライブラリを使用しました

library(rpart)
data <- read.csv("C:/data2.csv", header = FALSE, sep = ";",dec = ".")
d1-> data[,1:24]
fit <- rpart(v24~ v1+v2+v3+v4+v5+v6+v7+v8+v9+v10+v11+v12+v13+v14+v15+v16+v17+v18+v19+V20+v21+v22+v23,data=d1)

次のエラーが表示されます オブジェクト 'V24' が見つかりません

例:ソリューション

# Regression Tree Example
library(rpart)
data <- read.csv("C:/data2.csv", header = T,sep=";")
fit = rpart(linkId ~ .,method  = "anova",data  = data)

printcp(fit) # display the results 
plotcp(fit) # visualize cross-validation results 
summary(fit) # detailed summary of splits

# create additional plots 
par(mfrow=c(1,2)) # two plots on one page 
rsq.rpart(fit) # visualize cross-validation results     

# plot tree 
plot(fit, uniform=FALSE, 
     main="Regression Tree for Mileage ",compress = TRUE )
text(fit, use.n=TRUE, all=TRUE, cex=.8)

# create attractive postcript plot of tree 
post(fit, file = "c:/tree2.ps", 
     title = "Arbre de Regression ")
4

1 に答える 1

1

のヘルプを確認すると?formula、基本は簡単に理解できるはずです。

データフレームに名前が必要です。そうしないと、R が式を理解できません。また、ショートカットを使用してすべての変数を使用することもできます。

fit = rpart(CLASS ~ ., data = data)

または

fit = rpart(data = data, formula = CLASS ~ .)

引数に別の順序を使用する場合は、それらに名前を付ける必要があります (ただし、2 番目の方法を使用する必要はありません)。

于 2013-10-18T15:13:19.377 に答える