作者koai (可笑的自以为...)
站内Statistics
标题Re: [程式] R软体 检查矩阵每列是否相同
时间Sun Dec 29 00:17:27 2013
X=matrix of dim(10000,5)
试试 Y=as.double(as.character(paste(X[,1],X[,2],X[,3],X[,4],X[,5],sep="")))
order(table(Y),decreasing=TRUE)
结果会告诉你,哪些数字有重覆出现!
如果上面的做法不行,则要写个回圈!
Y=rep(0,10000)
for(i in 1:10000){
Y[i]=as.double(as.character(paste(X[i,1],X[i,2],X[i,3],X[i,4],X[i,5],sep="")))
}
order(table(Y),decreasing=TRUE)
参考一下吧~
※ 引述《zzss (阿文)》之铭言:
: ------------------------------------------------------------------------
: TITLE请着名软体类别
: 按ctrl+v可预览 发文前请把灰色的注解删除
: 可使用ctrl+y删除一整行
: [软体程式类别]:
: R
: [程式问题]:
: 想请问一下假设我现在有一个矩阵,我想检查每一列是否有相同要怎麽做呢?
: 列如 1,2,3,5,7
: 2,2,2,2,2
: 1,2,3,5,7
: 那就是1,3列相同,如果我现在一次有10000*5的矩阵要检查大概要怎做 谢谢
: [软体熟悉度]:
: 低(1~3个月)
: 有试过用which和metch做 但怎麽试就是不对 希望有人可以帮个忙 谢谢
: -----------------------------------------------------------------------------
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 101.8.203.125
1F:推 laba1014:这写法超赞的 12/29 09:09
2F:推 zzss:谢谢你喔 12/29 12:09
3F:→ andrew43:X的元素如果不是整数可能不方便这样解. 12/29 23:51
4F:→ koai:修改一下:Y=paste(X[,1],X[,2],X[,3],X[,4],X[,5],sep=",") 01/02 13:50
5F:→ koai:sort(table(Y),decreasing=TRUE)[1:sum(table(Y)>1)] 01/02 13:50