首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DBScan制表结果

DBScan制表结果
EN

Stack Overflow用户
提问于 2020-04-27 10:33:39
回答 1查看 54关注 0票数 0

我正在研究测序数据,我希望使用DBscan来创建簇,使用等位基因频率参数,这基本上是一个发生的基因突变的0-100%。我在比较每个模式的两个时间点,这给了我x和y的参数。我已经玩了eps和minPts值,这是好的,但我的问题是表的数据,我正在得到。

因此,我想知道哪些基因在由程序创建的集群中。我看过DBscan的文档,似乎在任何地方都找不到相关代码。这么说,我完全是一个业余的R,所以我可能错过了一些非常简单的东西。

我使用的是"dbscan“包--这就是我所运行的

代码语言:javascript
运行
复制
#Curating df to have relevant columns plus gene names, and transforming to matrix
dbscanplot.1 <- Curated.1 %>% select(Gene.Symbol.y, Diag.Allele.Fraction, Rel.Allele.Fraction)

#removing gene names to create matrix
dbscanplotMATRIX.1 <- as.matrix(dbscanplot.1[,2:3])

#running dbscan
kNNdistplot(dbscanplotMATRIX.1, k = 5)
abline(h=5, col = "red", lty=2)

pairs(dbscanplotMATRIX.1, col = res$cluster + 1L)

fr <- frNN(dbscanplotMATRIX.1, eps = 1.3)
dbscan(fr, minPts = 3)

#plotting data
plot(dbscanplotMATRIX.1, col=res$cluster)
points(dbscanplotMATRIX.1[res$cluster==0,], pch = 3, col = "grey")

我想知道每个集群中有哪些基因,所以我会操纵"dbscan(fr, minPts = 3)"线?

我尝试过下面推荐的db$cluster,但是生成的数据令人困惑,因为有超过1000个数据点正在进行分析。

一个例子是:

[1] 0 1 2 3 0 4 0 0 2 2 2 5 2 2 2 0 2 0 1 0 4 0 4 2 4 4 2 2 0 2 0 4 2 4 4 6 7 4

但是有着大量的数据点。我想我想知道是否有可能将这些生成的数据与基因名称相匹配。

编辑:我想我已经在Michael的帮助下解决了我的问题。我将dbscan结果导出为整数,然后将新列添加到origianl dataframe中。它似乎与dataframe结果相匹配。

代码语言:javascript
运行
复制
clusters<-res$cluster
dbscanplot.1["Cluster"] <- clusters

抱歉,这是一个非常简单的解决方案,但我是一个完全的新手!

谢谢你的帮助!

EN

回答 1

Stack Overflow用户

发布于 2020-04-27 14:37:37

来自文档? dbscan

代码语言:javascript
运行
复制
 Value:

 An object of class 'dbscan_fast' with the following components:
   eps : value of the eps parameter.
   minPts : value of the minPts parameter.
   cluster : A integer vector with cluster assignments. Zero indicates
      noise points.

这样,您就可以在代码中通过以下方式获得集群分配:

代码语言:javascript
运行
复制
db <-dbscan(fr, minPts = 3)
db$cluster
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61456854

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档