[問題] 從large list中將各類別存成各表

作者: popxpopxpop (爆爆爆)   2015-03-22 15:43:01
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
新手(在coursera修完兩門的新手,問些蠢問題請包涵)
[問題敘述]:
想將ㄧ大表格,依照類別分割並另存各表。
依照各州再依照死亡率、出生率等排序,想分別存成'每州'的表格。主要目標是想抓各州
死亡率最低的醫院、出生率最高的醫院、出生率第五的醫院等
目前做法做到卡關,手機發文概略寫一下,排版亂請見諒
感謝幫助
[程式範例]:
X<-read.csv()
subx<-split(x,x$state)
這時會存成含54個元素但各元素row不同的large list,沒去na值
然後就不知道怎麼寫了,知道要迴圈,但不知道怎麼分割元素另存
For ( I in x$state){
list[i]<-lappy(subx[i],........
}
[環境敘述]:
Rsdutio3.1.2
[關鍵字]:
選擇性,也許未來有用
作者: celestialgod (天)   2015-03-22 17:37:00
用order,可以做成,如果會用dplyr,可以用filter跟arrangeNA用is.na做判斷即可用手機不方便推程式碼,晚點可以寫給你。補充最大跟最小可以考慮which.max跟which.min
作者: popxpopxpop (爆爆爆)   2015-03-22 19:51:00
感謝推文,排序這部分我ok,比較困難是怎麼把資料分別存成各個子表格。 再次感謝c大
作者: celestialgod (天)   2015-03-22 20:39:00
你都用好split,切完再排就好,for應該是每個list跑一次排序,要新增就創新的list放表格進去。另外應該是for(i in 1:length(subx))subx[[i]]=order(blabla)補上程式碼:http://pastebin.com/0JMEnEur建議避免用lapply跟split搭配,可以考慮dplyr
作者: popxpopxpop (爆爆爆)   2015-03-23 06:31:00
恩恩,謝謝幫忙,其實是想做一個各州指定第幾row的項目再合成一個總表,不知道後面該怎麼做。請問我已經排序成我要的總list後,該怎麼提出各元素的第一個出來呢? 用new_list<-c(subx,new_list) 概念還是出不來...早上還沒讓網頁重整,沒看到c大的答案,感謝c大的大力幫忙。昨晚跟list的指定元素在奮戰。另外請問運行function的時候,怎麼得到裡面的各階層變數值,想確認數值用(因為程式沒錯所以不會跳trak出來)
作者: celestialgod (天)   2015-03-23 10:47:00
用browser,詳細可以看manual
作者: popxpopxpop (爆爆爆)   2015-03-23 12:24:00
Ok,謝c大!!

Links booklink

Contact Us: admin [ a t ] ucptt.com