• 【BioCode】根据seq与位点信息截取窗口


    代码说明

    sequence24371.txt

    以上为所有氨基酸的编号,序列,与位点标记。根据标记为“1”的位点,截取窗口:如下(实验结果):

    图示为一个窗口为12的蛋白质片段 2N+1=25;

    实现代码:

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    #include<algorithm>
    #include<iostream>
    #define N 12
    using namespace std;
    void jieduan(int n,char s3[],char s1[],int l)
    {
        int i;
        if(n<N)
        {
            for(i=n-N;i<0;i++)
            {
                s3[i+N-n]='*';
            }
            for(i=0;i<=n+N;i++)
            {
                s3[i+N-n]=s1[i];
            }
            s3[i+N-n]='
    ';
        }
        else if(n>=l-N)
        {
            for(i=n-N;i<l;i++)
            {
                s3[i+N-n]=s1[i];
            }
            for(i=l;i<=n+N;i++)
            {
                s3[i+N-n]='*';
            }
            s3[i+N-n]='
    ';
        }
        else
        {
            for(i=n-N;i<=n+N;i++)
            {
                s3[i+N-n]=s1[i];
            }
            s3[i+N-n]='
    ';
        }
    }
    int main()
    {
        int i,j,k,l,m,n;
        char s[10000],s1[10000],s2[10000],s3[100];
        FILE *p1=fopen("sequence24371.txt","r");
        if(p1==NULL) printf("File not open!
    ");
        FILE *p2=fopen("positive12.txt","w");
        FILE *p3=fopen("negative12.txt","w");
        while(fgets(s,50000,p1))
        {
            fgets(s1,50000,p1);
            fgets(s2,50000,p1);
            l=strlen(s2)-1;
            for(i=0;i<l;i++)
            {
                if(s1[i]=='K')
                {
                    jieduan(i,s3,s1,l);
                    
                    if(s2[i]=='0')
                    {
                        fputs(s3,p3);
                    }
                    else
                    {
                        fputs(s3,p2);
                    }
                }
            }
        }
        //system("pause");
        return 0;
    }

    注:

    ①更改#define N 12 可以任意改变要截取的窗口大小

    positive12.txt为生成的正样本窗口,原本标记为“1”

    negative12.txt为生成的正样本窗口,原本标记为“0”

  • 相关阅读:
    java 单例模式
    java 设计模式
    android 设计模式
    我的坦克兵爷爷也曾扬威世界
    我的坦克兵爷爷也曾扬威世界
    LD_LIBRARY_PATH设置问题
    LD_LIBRARY_PATH设置问题
    销售员和程序员
    销售员和程序员
    如何成为Python高手
  • 原文地址:https://www.cnblogs.com/yumiaomiao/p/7145932.html
Copyright © 2020-2023  润新知