J'ai une trame de données du formulaireComment utiliser une valeur d'une colonne pour extraire une autre valeur d'une autre colonne R
> geneRows[1:3,]
Probe/gene logFC CI.L CI.R AveExpr t P.Value adj.P.Val
17656 220307_at -0.09017596 -0.4395575 0.25920561 6.104288 -0.5992736 0.5662047 1
37517 220307_at 0.08704844 -0.2613434 0.43544028 6.104288 0.5801327 0.5784053 1
57376 220307_at -0.03501474 -0.1267764 0.05674688 6.152467 -0.7816350 0.4409881 1
B gene GSE Group1 Group2 shape color
17656 -5.639256 CD244 GSE2461 Male Female x-open black
37517 -5.978691 CD244 GSE2461 ulcerative colitis irritable bowel syndrome x-open black
57376 -5.141940 CD244 GSE27887 nonlesional skin lesional skin x-open black
Je veux sous-ensemble ce que je puisse obtenir à la colonne CI.R
lorsque la Colonne CI.L
est une certaine valeur. Par exemple, j'ai essayé
geneRows$CI.R[geneRows$CI.L == -0.4395575]
mais je reviens numeric(0)
, ce qui signifie un vecteur vide. Mais quand je l'essayer sur un ensemble de données de l'échantillon, quelque chose comme
mtcars$mpg[mtcars$carb==8]
cela fonctionne très bien. Ce sont les mêmes types de données et tout, alors quel est le problème ici?
Contexte
Je crée des lignes à ajouter à une parcelle plotly
.
line <- list(
type = "line",
line = list(color = "grey"),
width = 0.2,
xref = "x",
yref = "y"
)
lines <- list()
for (i in geneRows$CI.L) {
line[["x0"]] <- i
line[["x1"]] <- #here
lines <- c(lines, list(line))
}
Ils doivent tirer CI.L
-CI.R
pour chaque ligne. J'essaie d'obtenir le point final x1
de la table via le point de départ.
pouvez-vous vérifier la classe de chaque colonne? Est-ce numérique? – cderv
Oui à la fois 'CI.L' et' CI.R' sont numériques –
Essayez 'dplyr :: filter':' filter (geneRows, CI.L == -0.4395575) ' – Mako212