gpt4 book ai didi

r - 有没有办法为数据表绘制 UMAP 或 t-SNE 图?

转载 作者:行者123 更新时间:2023-12-04 12:41:30 27 4
gpt4 key购买 nike

我有一个很大的文件(下面是一小部分数据),如下所示,我想画一个 PCA,我可以用 PCA 函数画 PCA 但它看起来有点乱,因为我有 200 列所以我想也许 t-SNE 或 UMAP 效果更好,但我无法使用它们进行绘制。

我想在图中显示列(列名)之间的关系和聚类。事实上,我收集了来自不同研究的 A、B 和...数据,我想检查它们之间是否存在任何批处理效应。

如果有人能帮助我,我将不胜感激!

东风:

                            A              B             C           D
1:540450-541070 0.12495878 0.71580434 0.65399319 1.04879290
1:546500-548198 0.41064192 0.26136554 0.11939805 0.28721360
1:566726-567392 0.00000000 0.06663644 0.45661687 0.24408844
1:569158-570283 0.34433086 0.27614141 0.54063437 0.21675053
1:603298-605500 0.07036734 0.42324126 0.23017472 0.29530045
1:667800-669700 0.20388011 0.11678913 0.00000000 0.12833913
1:713575-713660 7.29171225 12.53078648 2.38515165 3.82500941
1:724497-727160 0.40730086 0.26664585 0.45678834 0.12209005
1:729399-731900 0.74345727 0.49685579 0.72956458 0.32499580

最佳答案

以下是一些使用 iris 数据集的示例,因为您的示例数据对于降维来说有点太小了。

对于 tSNE:

library(ggplot2)
library(Rtsne)

dat <- iris

tsne <- Rtsne(dat[!duplicated(dat), -5])

df <- data.frame(x = tsne$Y[,1],
y = tsne$Y[,2],
Species = dat[!duplicated(dat), 5])

ggplot(df, aes(x, y, colour = Species)) +
geom_point()

enter image description here

对于 UMAP:

library(umap)
umap <- umap(dat[!duplicated(dat), -5])

df <- data.frame(x = umap$layout[,1],
y = umap$layout[,2],
Species = dat[!duplicated(dat), 5])

ggplot(df, aes(x, y, colour = Species)) +
geom_point()

enter image description here

编辑:假设我们有数据,其中每个主题都是一列:

dat <- t(mtcars)

唯一的额外步骤是在将数据提供给 tSNE/UMAP 之前转置数据,然后复制绘图数据中的列名:

tsne <- Rtsne(t(dat), perplexity = 5) # got warning perplexity is too large

df <- data.frame(x = tsne$Y[,1],
y = tsne$Y[,2],
car = colnames(dat))

ggplot(df, aes(x, y, colour = car)) +
geom_point()

enter image description here

关于r - 有没有办法为数据表绘制 UMAP 或 t-SNE 图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58593213/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com