作者tnzikom (tnzikom)
看板R_Language
標題[問題] 篩選組別和刪除文字
時間Fri Jul 7 23:51:59 2017
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
入門(寫過其他程式,只是對語法不熟悉)
[問題敘述]:
1.想針對矩陣中前兩個column來分組
2.想刪除某一個column中的文字只留下數字
[程式範例]:
1.
有個矩陣類似這樣
group class tall
1 one a 186
2 two a 178
3 one b 168
我想要篩選group=one且class=a的話應該要怎麼做呢?
output:
group class tall
1 one a 186
2.
另外則是在某一列中,column中有如下的文字,
那要怎麼只把294、39、462的數字部分留下來呢
amount
1 $294(294dollars)
2 $39(39dollars)
3 $462(462dollars)
output:
amount
1 294
2 39
3 462
謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.222.151
※ 文章網址: https://webptt.com/m.aspx?n=bbs/R_Language/M.1499442722.A.445.html
1F:→ celestialgod: 1. m[m[,1]=="one" & m[,2]=="a"], m是你的矩陣 07/07 23:56
2F:→ celestialgod: 2. sub("^\\$(\\d+)", "\\1", v), v是你的向量 07/07 23:56
※ 編輯: tnzikom (140.112.222.151), 07/08/2017 02:36:13
3F:→ ianmao: 1. dplyr::filter(df, group == "one", class == "a") 07/08 08:45
4F:→ ianmao: df$amount <- stringr::str_replace(df$amount, pattern = 07/08 08:50
5F:→ ianmao: "\\$", replacement = "") 07/08 08:50
6F:→ ianmao: 第二題我忘了處理括號後面的部分,我重回 07/08 09:02
7F:→ ianmao: 先library(stringr)跟library(dplyr) 07/08 09:04
8F:→ ianmao: df$amount<-str_extract(df$amount, pattern = "^\\$[0-9] 07/08 09:08
9F:→ ianmao: +") %>% str_replace(pattern = "\\$", replacement="") 07/08 09:09