当前位置: 首页 > 知识库问答 >
问题:

根据值合并两个二进制数据.帧

葛兴发
2023-03-14
df1
  Gene name   sample1    sample2    sample3     sample4     sample5  
   A             0          1         0           0           1 
   B             1          0         0           1           0
   C             0          0         1           1           1
   D             1          0         0           1           0



df_final
  Gene name   sample1    sample2    sample3     sample4     sample5  
   A             1          1         1           0           0 
   B             0          1         0           0           0
   C             1          1         0           0           0
   D             1          1         0           0           0
df1
  Gene name   sample1    sample2    sample3     sample4     sample5  
   A             1          1         1           0           1 
   B             1          1         0           1           0
   C             1          1         1           1           1
   D             1          1         0           1           0

最好的,

E.

共有1个答案

班思源
2023-03-14

简短方式:#df3<-as.integer(df1+df2>0)#这是错误的

编辑短方式:df3<-apply(df1+df2>0,c(1,2),as.integer)#可能更短

使用循环等:

df3 <- as.data.frame(matrix(rep(NA, nrow(df1)*ncol(df1)),ncol=ncol(df1))
names(df3) <- names(df1)

for(i in 1:ncol(df1)){
  for(j in 1:nrow(df1)){
    if(i==1){#edited
       df3[j,i] <- df1[j,i]#edited; note, this is dangerous b/c it is assuming the data frames are organized in the same way
    }else{#edited
       df3[j,i] <- as.integer((df1[j,i] + df2[j,i])>0)
    }#edited
  }
}
 类似资料:
  • 问题内容: 我有两个数组: 阵列1: 和数组2: 我需要基于合并这两个数组,并获得此: 我如何在不迭代低谷的情况下做到这一点? 问题答案: 你可以这样- 如果和的顺序不同,请使用以下代码: 如果和以相同的顺序使用

  • 我有两个数据帧 我希望将它们合并到一个数据帧中,以便在两个数据帧中都存在键的情况下只考虑行: 如果我使用pandas.merge,我总是得到重复的行。有没有一个简单的方法来实现这一点?

  • 问题内容: 我需要使用javascript根据键值合并两个json对象。 我有两个不同的变量g和c。 术语:所有值都需要合并。 我尝试了以下代码:但我合并在’c’变量中具有相同ID的内容。但是我需要合并比较“ g”和“ c”。 预期产量: 问题答案: 如果ID中不存在ID,您忘了推入第一个循环;如果ID中不存在该对象的一个​​或多个ID,您忘了循环遍历。

  • 在索引上合并是不好的做法吗?不可能吗?如果是,如何将索引转换为名为“index”的新列?

  • 我有两个数据帧,DF1和DF2,DF1是存储来自DF2的任何附加信息的主机。 假设DF1是以下格式, DF2包含DF1中已经存在的2个条目和两个新条目。(itemId和item被视为一个组,可以被视为连接的键) 我需要合并两个数据框,以便增加现有项目计数并插入新项目。 结果应该是这样的: 我有一种方法可以做到这一点,但不确定这种方法是否有效或正确

  • 我有两个哈希数组: 我想在< code>a2中找到其< code>ID和< code>name字段与< code>a1中条目的< code>ID和< code>name字段相匹配的散列(不考虑< code>email或任何其他进入< code>a2的项目),然后将< code>ORDER_NO的值合并到< code>a1散列中也就是说,以下列方式结束: 我也想忽略 a2 中存在的元素,但不忽略 a