[問題] R 的 rename 問題

看板Statistics作者 (謠指部總司令)時間15年前 (2008/11/06 05:16), 編輯推噓1(106)
留言7則, 2人參與, 最新討論串1/1
長久一來在使用 R 時一直受到 rename 變數的困擾 看教學文件上面都寫用 names(object) <- c(....) 即可重新命名 可是當我在使用這個指令的時候 有時候成功,有時候卻失敗 感覺這不像 SAS 在 rename 時那樣直覺 後來也曾經嘗試使用 rename function 和 gregmisc package 裡面的 rename.var 但套用在我自己的實際資料時總是失敗 我猜想可能是因為一些情況我沒注意到所導致..... 我目前的情況是: 我用 list function 製造一些空的 data set 然後用 for loop 來批次進行一些運算 約略如下: a <- list() for(i in 1:5){ a[[i]] <- (一些簡單四則運算) } 然後把 a[[1]]~a[[5]] 合併成一個大的單一 data set: b <- cbind(a[[1]],a[[2]],a[[3]],a[[4]],a[[5]]) 去檢視 b 的資料內容,可發現其變數格都是空的 此時用 names(b) <- c("a1","a2","a3","a4","a5") 照道理應該是會成功的 不過再度去檢視資料時,變數格仍舊是空的 請問是否在使用 names(b) 之前漏了什麼設定? 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 152.2.149.157 ※ 編輯: chien533 來自: 152.2.149.157 (11/06 05:17)

11/06 06:26, , 1F
b 既非list,亦非data.frame. 如何給它 name??
11/06 06:26, 1F

11/06 06:27, , 2F
這邊的 cbind 之後是 matrix.
11/06 06:27, 2F

11/06 06:28, , 3F
b <- as.data.frame(cbind(...)); names(b) <- ...
11/06 06:28, 3F

11/06 06:29, , 4F
用 str() 可以看物件的 structure.
11/06 06:29, 4F

11/06 06:29, , 5F
你可以用 colnames(b) <- ..., 如果 b 是 matrix.
11/06 06:29, 5F

11/06 06:30, , 6F
names() 只能用在 list 和 data.frame.
11/06 06:30, 6F

11/06 09:43, , 7F
成功了,謝謝
11/06 09:43, 7F
文章代碼(AID): #194WqvYK (Statistics)