看板 R_Language 關於我們 聯絡資訊
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: *這是我第一次在PTT PO文,如有那裡沒有注意到的地方,煩請各位先進包涵!* 我的論文是有關房價預測,用的模型是Support Vector Regrssion, 並使用caret去做feature selection。 我的dataframe裡面有lat、lon、houseprice, estate_Lat estate_Lon estate_TotolPrice [1, ] 25.02862 121.5059 124117 [2, ] 25.03377 121.5089 2568347 [3, ] 25.04346 121.512 73000000 [4, ] 25.04348 121.512 5600000 [5, ] 25.04346 121.512 99300000 問題一: 老師希望我將lat、lon兩個欄位一起當作一個x的變數來看, 那y就是houseprice, 因為我語法不是很熟,想跟各位先進詢問這邊怎麼寫? *也先跟各位先進感謝* [程式範例]: #set.seed(7) library(mlbench) library(caret) mydata <- read.csv("D:/SupportVectorRegression/Origin/TestDatasetR_1000.csv", header=TRUE) location = data.frame(mydata[, c("estate_Lng", "estate_Lat")]) rfectrl <- rfeControl(functions=lmFuncs, method="cv", number=10, repeats=3,verbose=TRUE,returnResamp = "final") results <- rfe(location~., mydata$estate_TotalPrice,rfeControl=rfectrl,method = "svmRadial",metric = "Rsquared") print(results) predictors(results) plot(results, type=c("g", "o")) [環境敘述]: RStudio 3.2.2 [關鍵字]: dataframe、caret、latlon、predict -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.126.243 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1443680429.A.4D9.html
andrew43: 其實我沒看懂你卡哪裡... 10/01 21:00
andrew43: lat和lon明明就二個numeric var,是怎麼當作一個看? 10/01 21:12
andrew43: 喔好像是經緯度。as.factor(paste(經度, 緯度)) 10/01 23:20
babysian7: To:andrew43, 10/02 22:51
babysian7: 我照做了之後,test <- as.factor(paste(mydata$estate 10/02 22:51
babysian7: _Lng, mydata$estate_Lat))會出現以下錯誤訊息: 10/02 22:51
babysian7: Error in if (nrow(x) != length(y)) stop("there shou 10/02 22:51
babysian7: ld be the same number of 10/02 22:51
babysian7: samples in x and y") : argument is of length zero 10/02 22:51
babysian7: 是不是我哪裡誤會意思? 10/02 22:51
APM99: 把它們合併成一行且滿足你那個變數要的格式 10/06 21:55