首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用保存旧行名和新行名的dataframe更改行名

使用保存旧行名和新行名的dataframe更改行名
EN

Stack Overflow用户
提问于 2020-06-04 09:17:51
回答 1查看 37关注 0票数 0

我已经得到了一个数据(超过9000行),它保存了每个细胞集群(列)特定基因(行)的平均基因表达,现在我需要将基因名(行名)更改为同义词。看起来是这样的:

代码语言:javascript
复制
          Cluster1   Cluster2  Cluster3
[Tppp2]   10.32      0.14      2.56
[Mtx1]    6.32       8.77      0.30
[Vps37c]  225.02     132.87    9.52
[Slc39a9] 52.13      18.42     4.12

我还有另一个数据(超过13000行),它保存着原语;基因名,正如所说的(旧的)--正方根基因名(新的)。看起来是这样的:

代码语言:javascript
复制
    GeneName    NewGeneName
[1] Vps37c      VPS37C
[2] Tppp2       TPPP3
[3] Slc39a9     SLC39A9
[4] Mtx1        MTX1B

因此,对于第一个dataframe中的每个行,行名将与dataframe2$GeneName中的名称相匹配,然后dataframe2$NewGeneName中的名称将保存为新行名(或保存所有新行名的向量)。例如,Tppp2将是TPPP3,以此类推,结果如下:

rownames(expr_df) <- c("TPPP3", "MTX1B", "VPS37C", "SLC39A9"

我已经尝试了很多事情,但我真的很苦恼,我无法使它发挥作用。我不记得我试过和失败过的所有方式,抱歉。

FYI:表达式dataframe的同义词和行名不具有相同的顺序,而正方根dataframe所包含的基因比表达dataframe中的基因多。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-04 09:34:30

tidyverse解决方案:

代码语言:javascript
复制
df1 %>% 
  rownames_to_column() %>% 
  left_join(df2, by = c("rowname" = "GeneName")) 

  rowname Cluster1 Cluster2 Cluster3 NewGeneName
1   Tppp2    10.32     0.14     2.56       TPPP3
2    Mtx1     6.32     8.77     0.30       MTX1B
3  Vps37c   225.02   132.87     9.52      VPS37C
4 Slc39a9    52.13    18.42     4.12     SLC39A9

数据

代码语言:javascript
复制
df1 <- tibble::tribble(
         ~Cluster1, ~Cluster2, ~Cluster3,
             10.32,      0.14,      2.56,
              6.32,      8.77,       0.3,
            225.02,    132.87,      9.52,
             52.13,     18.42,      4.12
         )

df1 <- as.data.frame(df1)

rownames(df1) <- c("Tppp2", "Mtx1", "Vps37c", "Slc39a9")

df2 <- tibble::tribble(
         ~GeneName, ~NewGeneName,
          "Vps37c",     "VPS37C",
           "Tppp2",      "TPPP3",
         "Slc39a9",    "SLC39A9",
            "Mtx1",      "MTX1B"
         )
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62191059

复制
相关文章

相似问题

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