seq_alignment(sequences = hit_sequences) seq_alignment = function(sequences) { shell("del /f my_needle_file") for (i in 1:length(sequences[,1])) { cat(as.character(paste(">", as.vector(sequences[i,1]), sep="")), as.character(as.vector(sequences[i,6])), file = "file1", sep = "\n") for(j in 1:length(sequences[,1])) { cat(as.character(paste(">", as.vector(sequences[i,1]), sep="")), as.character(as.vector(sequences[i,6])), file = "file2", sep = "\n") shell("needle file1 file2 stdout -gapopen 10.0 -gapextend 0.5 >> my_needle_file") } } 输出乱码文件
时间: 2024-04-05 16:35:54 浏览: 52
这段代码的作用是对一组序列进行 Needleman-Wunsch 全局比对,并将比对结果输出到一个乱码文件中。其中,输入的序列信息存储在 sequences 变量中,每行包含了序列的 ID(第一列)和序列本身(第六列)。在函数中,首先删除之前可能存在的名为 "my_needle_file" 的文件,然后对每个序列两两进行比对,并将比对结果追加到 "my_needle_file" 文件中。但是,由于比对结果是直接输出到文件而不是变量中,所以函数输出的是乱码文件而不是比对结果。
相关问题
seq_alignment(sequences = hit_sequences) Error during wrapup: unused argument (sequences = hit_sequences) Error: no more error handlers available (recursive errors?); invoking 'abort' restart报错解决办法
这个错误是由于在调用函数 seq_alignment() 时,传递了一个名为 sequences 的参数,但是该函数并没有定义这个参数。因此,您需要检查函数定义,并确保传递给函数的参数与函数定义中指定的参数匹配。
如果您确定函数确实应该接受一个名为 sequences 的参数,则可能是因为该函数的定义已经更改,但是您的代码没有相应地更新。在这种情况下,您需要更新代码以反映函数的新定义。
另外,根据错误信息,似乎还存在其他错误,您可能需要查看完整的错误信息以找到其他问题并解决它们。如果您无法解决这些错误,您可以尝试使用调试器来识别和解决问题,或者寻求其他人的帮助。
my_sequences = seq_import(input_file = my_file) Error in seq_import(input_file = my_file) : unused argument (input_file = my_file)
这个错误提示是因为在调用 `seq_import()` 函数时,没有定义 `input_file` 参数。请检查你的代码,确认是否正确传递了 `my_file` 参数给 `seq_import()` 函数。你可以尝试修改代码如下:
```
my_sequences = seq_import(my_file)
```
这样应该就可以正常导入序列了。