看板 R_Language 關於我們 聯絡資訊
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 新手 [問題敘述]: 我的資料Excel檔裡面有兩個column, 第一個column他是id,第二的column是他的名字 因為他的名字都會有一些不必要的符號, 所以我想把一些符號改成空格 可是不太會用for loop... 請問要如何針對column 2 檢查每一個名字的每一個字母呢? 謝謝~ 例如: 將"<" 及 ">" 變空格 ┌───┬────┐ │ id1 │name<1> │ →name 1 ├───┼────┤ │ id2 │n<2>tea │ →n 2 tea ├───┼────┤ │ id3 │juice<3>│ →juice 3 └───┴────┘ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.25.100 ※ 文章網址: http://www.ptt.cc/bbs/R_Language/M.1414660042.A.FCD.html
koai: gsub(">"," ",gsub("<"," ",data[,2])) 10/30 17:51
那如果他還有其他標點符號呢?? 因為用 gsub 好像要知道他有哪些符號是我們要刪的? 但這個資料好像甚麼樣符號都有可能出現 ※ 編輯: qazzzzz (1.160.11.45), 10/30/2014 21:55:40
Edster: 如果是這樣你必須先定義什麼是要保留的文字. 10/30 22:34
Edster: 而什麼是要被取代的. 10/30 22:34
Edster: 比如說你可以定義 letters (英文字母) 是要保留的. 10/30 22:36
Edster: 其餘全部轉成空白. 10/30 22:36
Edster: library(stringr) 10/30 22:52
Edster: x = c("xz", "123", "gcb5c") 10/30 22:52
Edster: y = rep(list(character(100)),length(x)) 10/30 22:52
Edster: for(i in 1:length(x)) for(j in 1:nchar(x[i])) 10/30 22:52
Edster: y[[i]][j] = str_sub(x[i], j, j) 10/30 22:53
Edster: unique(unlist(y)) 10/30 22:54
Edster: 你就得到所有的字元, 再用上面的教學取代. 10/30 22:55
obarisk: keyword regexp punct 10/31 10:07
obarisk: gsub("[[:punct:]]", "", string) 10/31 10:08
謝謝大家的教學~!!!! ※ 編輯: qazzzzz (140.112.25.100), 11/04/2014 10:25:23