我正在尝试通过此操作将我的数据框链接到颜色。但是,我继续收到
“警告消息: 在
[<-.factor
(*tmp*
中,pca_matrix [,“ Subgroup”] == 1,值= c(1L,: 无效的因子水平,生成了NA”
samples_names <- row.names(PCA_Model$rotation)
# Bind sample names to their subgroup
pca_matrix <- cbind(samples_names, "Subgroup"=labeled_subgroup, stringsAsFactors=FALSE)
# Link dataframe to color
pca_matrix[,"Subgroup"][pca_matrix[,"Subgroup"]==1] <- "blue"
pca_matrix[,"Subgroup"][pca_matrix[,"Subgroup"]==2] <- "red"
pca_matrix[,"Subgroup"][pca_matrix[,"Subgroup"]==3] <- "yellow"
pca_matrix[,"Subgroup"][pca_matrix[,"Subgroup"]==4] <- "green"
pca_matrix[,"Subgroup"][pca_matrix[,"Subgroup"]==5] <- "black"
pca_matrix[,"Subgroup"][pca_matrix[,"Subgroup"]==6] <- "white"
我在网上阅读了其他问题,这是因为我的字符变量正在成为一个因素,在使数据框强制stringsAsFactors = FALSE
成为字符时,我应该使用"Type"
标志。
我的数据框如下所示,并包含子组C1-C6。我想将子组链接到一种颜色,以便可以将数据绘制为3d图,并使用颜色信息来区分组。
答案 0 :(得分:1)
不是一个一个地做,而是一个factor
factor(pca_matrix[,"Subgroup"], levels = paste0("C", 1:6),
labels = c("blue", "red", "yellow", "green", "black", "white"))