[問題] 如何將表格轉換成一行資料

作者: c9052002 (c9052002)   2017-07-21 14:13:09
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
請把以下不需要的部份刪除
新手(沒寫過程式,R 是我的第一次)
[問題敘述]:
目前有一個表格內容,但因為需要匯出至其他軟體,因此要變更目前的格式,
原先的表格抬頭為編號,排序分別依照日期由上至下排列,
而希望變更的內容為:排序=日期*編號數量由上至下
原本
1 2 3 4 ......
1/1 a b c d
1/2 g h i j
1/3 m n o p
1/4 s t u v
希望變更結果
x
1/1 a
1/1 b
1/1 c
1/1 d
1/2 g
1/2 h
1/2 i
1/2 j
1/3 m
1/3 n
1/3 o
1/3 p
1/4 s
1/4 t
1/4 u
1/4 v
不知大大們是否有解,小的以往都是用excel,但要處理的資料量太大了,
希望可以用r來減少人工動作的時間QAQ或是人工動完EXCEL死機的悲劇Orz
感謝
[程式範例]:
目前用以下方法print出來的結果"看起來"是我要的,
但我不知該如何將資料匯出成我要的結果
x=1
while(x<=4)
{
print(c(表格名稱[x,1:107]))
x=x+1
}
至於日期的序列我有另外找到可以生成的方式
c<-rep(seq(as.POSIXct("1990-01-01"), len=9131, by="day"), rep(107, 9131))
data.frame(c)->表格名稱
write.table(表格名稱,file = "匯出名稱", sep = ",")
以上是目前用很笨的方式逐一修改再合併資料。
[環境敘述]:
Window 7 ,RStudio介面
[關鍵字]:
更改格式,表格資料轉為單行資料
作者: locka (locka)   2017-07-21 14:19:00
gather()
作者: c9052002 (c9052002)   2017-07-21 14:52:00
謝謝大大的關鍵字,讓我找到更切合的melt()#;D
作者: locka (locka)   2017-07-21 15:07:00
yes~ 熟data.table的話melt比較簡潔 :)
作者: c9052002 (c9052002)   2017-07-21 15:51:00
好怪QQ下載了封包卻無法執行melt,來試試gather(),再謝過

Links booklink

Contact Us: admin [ a t ] ucptt.com