Re: [問題] 資料次數依照日序排列
轉成日期物件會好處理很多。
library(magrittr)
x <-
paste0(round(runif(200, 1, 12)),
"月",
round(runif(200, 1, 28)),
"日")
x.date <-
lapply(strsplit(x, "[日月]"), function(foo) {
paste(foo, collapse = "-") %>%
as.Date(., "%m-%d")
}) %>%
do.call("c", .)
y <- table(x.date)
y[order(names(y))]
※ 引述《demonio (亦魯)》之銘言:
: [問題類型]:
: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
: [軟體熟悉度]:
: 入門(寫過其他程式,只是對語法不熟悉)
: [問題敘述]:
: 有一批日期資料如下:
: 3 1月2日
: 4 1月3日
: 5 1月3日
: 6 1月3日
: 7 1月3日
: 8 1月3日
: 9 1月4日
: 10 1月5日
: 11 1月5日
: 12 1月5日
: 13 1月8日
: 14 1月10日
: 15 1月10日
: 16 1月11日
: 17 1月11日
: ...以下省略
: 想用table計算出這些日期出現的次數,然後用折線圖從1月1日開始呈現出次數(預計是用
: plot)
: 可是table不會按照日期排列,table的排列方式如下,是從1月10日開始:
: 1月10日 1月11日 1月12日 1月15日 1月17日 1月18日 1月22日 1月23日
: 2 7 2 2 1 4 2 3
: 1月24日 1月25日 1月26日 1月29日 1月2日 1月30日 1月31日 1月3日
: 1 1 3 4 3 2 2 5
: 1月4日 1月5日 1月8日 2月12日 2月13日 2月14日 2月21日 2月22日
: 1 3 1 1 2 3 3 1
: 以至於用plot折線圖畫也是從1月10號開始。無法由1月1日到12月31日呈現次數折線
: 請教這是否需要特殊的函數來解?
: [程式範例]:
: mail2018<-read.csv(" mail.csv", header = FALSE)
: mail<-table(mail2018)
: plot(mail,type = "l",xlab="日期",ylab="次數",ylim=c(0,20))
: [環境敘述]:
: RStudio Version 1.1.423
: [關鍵字]:
:
: table
:
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.133.43.95
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1540821800.A.7CC.html
→
10/29 22:25,
6年前
, 1F
10/29 22:25, 1F
→
10/29 22:25,
6年前
, 2F
10/29 22:25, 2F
我傻了,其實 x.date <- as.Date(x, "%m月%d日") 就可以了
※ 編輯: andrew43 (220.133.43.95), 10/29/2018 22:28:30
推
10/30 11:06,
6年前
, 3F
10/30 11:06, 3F
→
10/30 11:07,
6年前
, 4F
10/30 11:07, 4F
→
10/30 11:44,
6年前
, 5F
10/30 11:44, 5F
→
10/30 11:45,
6年前
, 6F
10/30 11:45, 6F
討論串 (同標題文章)
R_Language 近期熱門文章
PTT數位生活區 即時熱門文章