2015-08-21 49 views
-1

我的ID是长度为18子集的唯一名称

mydata$ID=rep(c("WT1","WT2", "WT3", "KO1", "KO2", "KO3"), each=3) 

[1] "WT1" "WT1" "WT1" "WT2" "WT2" "WT2" "WT3" "WT3" "WT3" "KO1" "KO1" "KO1" "KO2" "KO2" "KO2" "KO3" 
[17] "KO3" "KO3" 

我想创建的元素相同的订单,新的载体,但单独服用,像这样的:

WT1 WT2 WT3 KO1 KO2 KO3 

我曾尝试:

mydata$ID=factor(unique(mydata$ID)) 

但它返回:

[1] WT1 WT2 WT3 KO1 KO2 KO3 WT1 WT2 WT3 KO1 KO2 KO3 WT1 WT2 WT3 KO1 KO2 KO3 
+2

请说明您要使用新的向量 –

+0

注意的是,在讨论的问题,在分配时回数据帧,该怎么办结果被回收填充。 –

+0

'mydata $ ID'的长度为18.它是数据框/数据表的一个子集,当您为其指定一个长度为6的矢量时,您要求它重新使用矢量3x或返回不兼容的df ,它不会这样做。你想改变一个现有的对象或创建一个新的对象吗? –

回答

2

让我们保持这种简单:

unique(mydata$ID) 
[1] "WT1" "WT2" "WT3" "KO1" "KO2" "KO3" 
-1

安装sqldf软件包。然后做

newVector <- sqldf('select distinct(ID) from mydata');