输入:
library(ISLR)
data("NCI60")
cancers=NCI60$labs
gene_counts <- table(cancers)
g3 <- names(gene_counts[gene_counts > 3])
g3
subset_NCI60 <- NCI60[cancers %in% g3]
subset_NCI60$labs
输出:
[1] "BREAST" "CNS" "COLON" "LEUKEMIA" "MELANOMA" "NSCLC" "OVARIAN"
[8] "RENAL"
[1] "CNS" "CNS" "CNS" "RENAL" "BREAST"
[6] "CNS" "CNS" "BREAST" "NSCLC" "NSCLC"
[11] "RENAL" "RENAL" "RENAL" "RENAL" "RENAL"
[16] "RENAL" "RENAL" "BREAST" "NSCLC" "RENAL"
[21] "UNKNOWN" "OVARIAN" "MELANOMA" "PROSTATE" "OVARIAN"
[26] "OVARIAN" "OVARIAN" "OVARIAN" "OVARIAN" "PROSTATE"
[31] "NSCLC" "NSCLC" "NSCLC" "LEUKEMIA" "K562B-repro"
[36] "K562A-repro" "LEUKEMIA" "LEUKEMIA" "LEUKEMIA" "LEUKEMIA"
[41] "LEUKEMIA" "COLON" "COLON" "COLON" "COLON"
[46] "COLON" "COLON" "COLON" "MCF7A-repro" "BREAST"
[51] "MCF7D-repro" "BREAST" "NSCLC" "NSCLC" "NSCLC"
[56] "MELANOMA" "BREAST" "BREAST" "MELANOMA" "MELANOMA"
[61] "MELANOMA" "MELANOMA" "MELANOMA" "MELANOMA"
我的问题: 仅“BREAST”“CNS”“COLON”“LEUKEMIA”“MELANOMA”“NSCLC”“OVARIAN”和“RENAL”应出现在第二个输出中。我做错了什么?
subset <- NCI60[NCI60$labs %in% g3, ]
我知道这是正确的方法,但是当我这样做时,我的 R 会抛出此错误:
子集<- NCI60[NCI60$labs %in% g3, ] Error in NCI60[NCI60$labs %in% g3, ] : incorrect number of dimensions
> subset_NCI60 <- lapply(NCI60, `[`, NCI60$labs %in% g3)
> unique(subset_NCI60$labs)
[1] "CNS" "RENAL" "BREAST" "NSCLC" "OVARIAN" "MELANOMA" "LEUKEMIA" "COLON"