I have a data table that looks like this,
而且我基本上想要做的是在表中创建一个新列,其中包含每个样本的“读数”中的倍数变化,例如,这>]
第0周的样本1 /第0周的样本1
第4周的样本1 /第0周的样本1
第14周的样本1 /第0周的样本1
以此类推,在示例1的所有时间点上,依此类推,然后使用它们从周0开始的相应“读数”为其余示例计算相同的事物。
到目前为止,我所尝试的是类似的东西,
r SampleIDs<-as.character(unique(table$ID)) table$FC<-for(i in table[i,]){ for(j in SampleIDs){ if(table[i,"ID"]==j){ table[i,3]/table[(("WEEK"==0)&("ID"==j)),3] } } } }
运行时,代码返回错误,
的样本数据的单元格来自第0周,以计算我的倍数变化值。对此方法的任何帮助将不胜感激!谢谢Error in if (table[i, "SampleID"] == j) { : argument is of length zero
[我想做的是创建一个具有唯一ID的单独矢量,并在for函数中使用它来逐行查找,以确保该行包含具有相同ID的样本,然后尝试检索包含ID j AND
我有一个看起来像这样的数据表,而我基本上想要做的是在表中创建一个新列,其中包含每个样本的“读数”中的倍数变化,例如。 。
您不应将for
循环用于需要按组执行的操作。有一些功能可帮助您执行此类分组计算。
[也许,我们可以按'ID'分组并通过将'readout'除以'WEEK'为0的'readout'来创建新列