如何使用 Matlab 在 for 循环内使用捕获氨基酸频率?
How to use capture amino acid frequencies inside a for loop using Matlab?
我有一个简单的代码,它捕获多序列比对的每一列的氨基酸频率并将其存储在矩阵中。我有一个名为 amino
的载体,它存储不同的氨基酸类型:
amino=['A','R','N','D','C','Q','E','G','H','I','L','K','M','F','P','S','T','W','Y','V','Gaps']
我正在使用 Matlab 的内置函数来捕获每个元素的频率:
aacount(optimal(:,2),'Gaps',true).A % return the frequency of A in 2nd column
我想做的是使用 amino
向量索引获得相同的输出。像这样:
aacount(optimal(:,2),'Gaps',true).index(1)
这种方法会产生以下错误:
'Reference to non-existent field'.
谁能帮我解决这个问题?
在这种情况下,您可以使用动态字段引用 (.()
)。以您的示例为基础,以下 returns 从 aacount()
获得的丙氨酸(氨基酸 'A')的频率:
aacount(optimal(:,2),'Gaps',true).(amino(1))
我有一个简单的代码,它捕获多序列比对的每一列的氨基酸频率并将其存储在矩阵中。我有一个名为 amino
的载体,它存储不同的氨基酸类型:
amino=['A','R','N','D','C','Q','E','G','H','I','L','K','M','F','P','S','T','W','Y','V','Gaps']
我正在使用 Matlab 的内置函数来捕获每个元素的频率:
aacount(optimal(:,2),'Gaps',true).A % return the frequency of A in 2nd column
我想做的是使用 amino
向量索引获得相同的输出。像这样:
aacount(optimal(:,2),'Gaps',true).index(1)
这种方法会产生以下错误:
'Reference to non-existent field'.
谁能帮我解决这个问题?
在这种情况下,您可以使用动态字段引用 (.()
)。以您的示例为基础,以下 returns 从 aacount()
获得的丙氨酸(氨基酸 'A')的频率:
aacount(optimal(:,2),'Gaps',true).(amino(1))