R 唯一名称子集
我有一个长度为18的向量R 唯一名称子集,r,subset,R,Subset,我有一个长度为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
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
安装sqldf包。那就做吧
newVector <- sqldf('select distinct(ID) from mydata');
newVector让我们保持简单:
unique(mydata$ID)
[1] "WT1" "WT2" "WT3" "KO1" "KO2" "KO3"
请澄清您想对新矢量执行什么操作注意,问题中的问题发生在分配回数据框时,结果在数据框中循环填充。mydata$ID
的长度为18。它是数据帧/数据表的子集,当您为其分配长度为6的向量时,您要求它循环使用向量3x或返回不兼容的df,但它不会这样做。你是想改变一个现有的物体还是创建一个新的物体?新的矢量将作为热图的原始名称。热图数据将是三份数据的平均值。所以新的数据帧(用于热图)将有6个raw。6行或6行的长度?他们是不同的。长度为6的数据帧有六列。请在帖子中显示所需结果。