Is there a way to get `cor` to work?
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 42/100
Rechercherichtung
Beginnen Sie damit, den gemeldeten Fehler cor(DelayedArray(x), DelayedArray(y)) zu reproduzieren, und vergleichen Sie ihn mit den bereitgestellten delayedCov-Beispielen. Verwenden Sie das im Issue beschriebene Verhalten der Pearson-Korrelation als Ziel und überprüfen Sie, dass äquivalente Matrix- und DelayedArray-Eingaben übereinstimmende Ergebnisse ohne den numerischen Typfehler liefern.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
When I try cor, I get errors like Error in cor(DelayedArray(x), DelayedArray(y)) : 'x' must be numeric. Am I missing something simple?
If it's not implemented, I have a little function for this and I could send a pull request.
#' Drop-in replacement for cov or cor; tolerates DelayedArray input. Pearson correlation only.
#'
delayedCov = function(x, y = x, do_cor = F){
mux = colMeans(x)
muy = colMeans(y)
zx = sweep(x, 2, mux, "-")
zy = sweep(y, 2, muy, "-")
covxy = t(zx) %*% zy
covxy = covxy / nrow(x)
if(do_cor){
sx = sqrt(colMeans(zx^2))
sy = sqrt(colMeans(zy^2))
covxy = Matrix::Diagonal(x = 1/sx) %*% covxy %*% Matrix::Diagonal(x = 1/sy)
}
covxy
}
# tests
x = matrix(rnorm(1000), ncol = 10)
y = matrix(rnorm(1000), ncol = 10)
plot(delayedCov(x, y), cov(x, y)); abline(a = 0, b = 1)
plot(delayedCov(x, y, do_cor = T), cor(x, y)); abline(a = 0, b = 1)
plot(delayedCov(DelayedArray(x), DelayedArray(y), do_cor = T), cor(x, y)); abline(a = 0, b = 1)
- Vorherrschende Sprache
- R
- Sterne
- 29
- Forks
- 12
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus Bioconductor/DelayedArray
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 38/100
Bioconductor/DelayedArray#129 · 11 Kommentare ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
Bioconductor/DelayedArray#127 · 1 Kommentar ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 25/100
Bioconductor/DelayedArray#125 · 1 Kommentar ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 45/100
Bioconductor/DelayedArray#123 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 20/100
Bioconductor/DelayedArray#122 ·
Alle Issues in Bioconductor/DelayedArray
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
robjhyndman/forecast#1220 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
JamesHWade/deputy#192 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
bug triage_needed
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
pharmaverse/rtables#1123 · 1 Kommentar · 1 Reaktion ·