Closed ShixiangWang closed 3 years ago
这个你要存储哪些结果到包里,然后提供哪些函数在未实现前和实现后都可以在这里讨论下。
你有空把 首先可以完成自己的数据的差异表达分析 这个做了吧,一些写好的函数就存到 R 包里面,但整个过程最好在 data-raw 下创建一个脚本记录。
ok
上传了一个deg.R的脚本,完成批量差异分析,并把结果保存成list对象,需要说明的一点就是,如下图 这个GSE里面一共有6个DMSO对照,每个重复两次,所以实际上是分3个批次进行的实验,比如GSM2286316 和GSM2286317是另个DMSO,那么他前面的样本都是和这个对照做差异的,所以后面的情况也是类似,然后基于这个思路,完成了批量差异分析
另外还有一个问题,想咨询你,如下图所示的两个文件夹,是怎样生成的?这一块我没怎么看到
脚本放在了data-raw下面了
@saisaitian 好,我有空看下还有什么需要调整的。
你说的两个文件夹 data-raw
usethis 包有一个 use_data_raw()
函数,然后 inst 是直接创建的。很多东西并不需要使用特定函数去生成,学习和了解R包的结构和目录就清楚了。
@saisaitian 我没有看到你的差异分析结果。前面的图你想说全部实验样本来自3个批次,每个批次都有实验样本和对照样本,然后是对每个批次单独做差异分析?
是的,结果好像没上传上传,就是运行那个脚本就会出现的,我现在把他上传到了data_raw下面了
你在 https://github.com/saisaitian/TCM_Microarray/blob/main/data-raw/deg.R 的差异基因寻找操作能否抽象为一个函数放到 R 目录下?就像 https://github.com/saisaitian/TCM_Microarray/blob/main/R/load_example_dataset.R 这里展示的一样。这个你有时间做一下,我在你的基础上进行修改和完善。
好嘞
@saisaitian
下面的函数建议拆分成两个函数,
另外,差异分析的数据来源建议使用我们清理过的放在包内的数据集:
devtools::load_all()
data <- load_example_dataset()
然后结果名字不需要加前缀,没有i引入新的信息,后面还要去除掉。
好嘞
我整了一下,不知道是否是你说的意思?代码在data-raw下面的deg2.R
@saisaitian 虽然你现在两个函数拆分开了,但并不具备通用性,比如第二个函数里面的 expr 和 group_list 来自哪里呢,这些都需要在函数参数中进行定义。函数与外部数据应该尽量独立。你在写这些函数的时候,需要考虑你的使用者会怎么使用它,目前这两个函数虽然可以处理我们自带的数据集,但无法处理用户提供的数据,你需要把数据输入和数据处理给隔离掉。有空你可以进一步重写两个函数,并在 R/ 目录下创建对应的文件将代码放在里面,添加相应的注释文档。
https://github.com/saisaitian/TCM_Microarray/blob/main/R/load_example_deg.R 这里也有不少问题,特别是你引用了 data-raw下的数据,这个目录对于实际上要发布的包是不可见的,我后面有空改写一下。
翔哥,我重写了这个函数,这个函数主要是进行两组差异分析的比较,暂时是使用limma方法 另外又重写了那个load_example_deg函数,里面迭代了deg.cal函数,实现内部数据的差异分析
您抽空在看一下是否合适?
好,我明天看下。
@saisaitian 我对代码进行了全面的清理和修改,你有空花时间仔细看一看。
收到,你写的真的太厉害了,简直和你差距太大了
主要是实现我上面跟你说过的思路。在写代码的时候,风格尽量保持一致,然后参数的设定和提示也需要合理,这个都需要慢慢自己摸索和优化的。希望你看到我重写后的代码有所收获,虽然是做一样的事情,实现的方式可以做到更好。
翔哥,想咨询你一下,如何使用roxygen2进行document 数据集和包,我找了很久没找到方法,只是看到有人提到,不知道具体的代码如何实现,想问一下
完成小分子调控的差异表达分析
这里你是准备只提供结果还是说分析代码也作为函数提供?@saisaitian
注意⚠️:如果你要提供差异表达分析的数据给用户使用,记得将处理过程放到 https://github.com/saisaitian/TCM_Microarray/tree/main/data-raw 目录下,不要放到根目录或R目录下。