作者gsuper (统计的巴比伦塔)
看板Statistics
标题[程式] a[order(a[,1]),] 的问题
时间Sun Dec 19 21:20:29 2010
D_ID SNP_ID fac RACE CHR CHR_LOCATION MARKER_EFFECT HAN_ABLE
131 "0" "12061474" "0_12061474" "CEU" "1" "202655937" "RISK" "0.922"
195 "0" "2476601" "0_2476601" "CEU" "1" "114179091" "PROTECTIVE" "0.057"
126 "0" "3741208" "0_3741208" "CEU" "11" "2126350" "PROTECTIVE" "0.167"
278 "0" "1701704" "0_1701704" "CEU" "12" "54698754" "PROTECTIVE" "0.278"
123 "0" "2292239" "0_2292239" "CEU" "12" "54768447" "PROTECTIVE" "0.256"
127 "0" "3764021" "0_3764021" "CEU" "12" "9724895" "RISK" "0.700"
197 "0" "17673553" "0_17673553" "CEU" "16" "11149407" "RISK" "0.884"
196 "0" "2903692" "0_2903692" "CEU" "16" "11146284" "RISK" "0.733"
194 "0" "725613" "0_725613" "CEU" "16" "11077184" "RISK" "0.756"
121 "0" "1893217" "0_1893217" "CEU" "18" "12799340" "PROTECTIVE" "0.189"
122 "0" "1990760" "0_1990760" "CEU" "2" "162832297" "RISK" "0.689"
125 "0" "3087243" "0_3087243" "CEU" "2" "204447164" "RISK" "0.789"
133 "0" "17388568" "0_17388568" "CEU" "4" "123548812" "PROTECTIVE" "0.111"
----------------------------------------------------------
我现在想要做的事情是
先按照 D_ID 排序
然後再按照 CHR 排序
再按照 CHR_LOCATION 排序
我想了很久
还是不知道要怎麽写最好
当然用3个回圈和一堆判断式是可以做
但我想是不是有甚麽更简单的写法可以用
请教各位程式高手
是否有较简单的写法?
-----------------------------------------------------------
顺便讲一下
第三个 column 是我最近想出来的一种很不错的写法
在跨多张 table 处理资料
又需要有个 Primary Key 的时候很好用
简单来说就是建 index , R 的 index array 超好用
有兴趣的人可以参考一下
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.239.247
※ 编辑: gsuper 来自: 140.113.239.247 (12/19 21:20)
※ 编辑: gsuper 来自: 140.113.239.247 (12/19 21:21)
※ 编辑: gsuper 来自: 140.113.239.247 (12/19 21:22)
※ 编辑: gsuper 来自: 140.113.239.247 (12/19 21:26)
※ 编辑: gsuper 来自: 140.113.239.247 (12/19 21:30)
1F:→ bmka:Check out the "doBy" package in R. 12/19 21:44
2F:→ bmka:I would avoid using loops in R. 12/19 21:46
自问自答
order 可以这样用
order(
tmp[,"CHR"],
tmp[,"CHR_LOCATION"])
把比较重要的排前面就可以了
※ 编辑: gsuper 来自: 140.113.239.247 (12/19 21:59)
http://stackoverflow.com/questions/1296646/
how-to-sort-a-dataframe-by-columns-in-r
这里还有另外5种方法
B大提到的的 doBy 也在里面
※ 编辑: gsuper 来自: 140.113.239.247 (12/19 22:03)
※ 编辑: gsuper 来自: 140.113.239.247 (12/19 22:04)
3F:推 bmka:认真! 12/19 22:06
4F:推 wlsherica:厉害! 12/20 20:17
※ gsuper:转录至看板 R_Language 03/30 20:35
5F:推 wheado: 请问你的自问自答是order(tmp[,"CHR"],tmp[,"CHR_LOCATION 08/10 11:09
6F:→ wheado: ])是指先排前面的CHR 在排後面的CHR_LOCATION 吗? 08/10 11:10