Re: [程式] [R]資料處理問題
看板Statistics作者gsuper (Logistic recrashing)時間12年前 (2012/05/30 21:03)推噓1(1推 0噓 3→)留言4則, 2人參與討論串2/2 (看更多)
※ 引述《ooorrrzzz (orz)》之銘言:
: [軟體程式類別]: R
: [程式問題]: 資料處理
: [軟體熟悉度]:中(3個月到1年)
: [問題敘述]:
: 想要計算一些月資料的季平均值
: 想要由「月份」衍生出「季」的欄位
: 假設原始資料為:
: int_rate month
: 1.2% 01
: 1.5% 02
: 1.8% 03
: 1.6% 04
: 1.3% 05
: 1.2% 06
: 1.4% 07
: ... ...
: 希望增加一欄「季」的欄位
: 整理成資料型態為
: int_rate month quarter
: 1.2% 01 Q1
: 1.5% 02 Q1
: 1.8% 03 Q1
: 1.6% 04 Q2
: 1.3% 05 Q2
: 1.2% 06 Q2
: 1.4% 07 Q3
: ... ... ...
: 嚐試設 Q1=c('01', '02', '03')
: 再用if 或是 for 等條件或迴圈方式處理
: 不過都無法正確整理出資料
: 感覺好像很簡單,不過卻想不出什麼解決方案
: 想請教一下是否有什麼方法或函數可以整理這類資料
: 謝謝
x <- gsub("^ *| *$","",as.matrix(你的矩陣))
quarter <- rep(NA,dim(x)[1])
quarter[as.numeric(x[,"month"]) %in% 1:3] <- "Q1"
quarter[as.numeric(x[,"month"]) %in% 4:6] <- "Q2"
quarter[as.numeric(x[,"month"]) %in% 7:9] <- "Q3"
quarter[as.numeric(x[,"month"]) %in% 10:12] <- "Q4"
if( any(is.na(quarter)) )
{print("有不是1~12月份的怪資料,請檢察資料");Sys.sleep(10000000000) }
result <- cbind(x,quarter=quarter)
--
祭頌后靈的騎士道與白主教穩守黃金鄉
邊境兵躁動自高自大妄入堡壘
黑主教冷靜人格分裂
籠城王與雙子戰塔一籌莫展
掌握無限的魔女喚醒躺下的靈魂
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.239.247
※ 編輯: gsuper 來自: 140.113.239.247 (05/30 21:08)
→
05/30 21:11, , 1F
05/30 21:11, 1F
推
05/30 21:41, , 2F
05/30 21:41, 2F
→
05/30 21:43, , 3F
05/30 21:43, 3F
→
05/30 21:48, , 4F
05/30 21:48, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):