环境还是m6a的
conda activate m6a
cd /home/data/t210424/test
QC
mkdir ./QCclean
fastqc -t 8 -o ./QCclean *.fastq.gz
multiqc ./
Trim
#!/bin/bash
# 脚本名称:rnc_trim_optimized.sh
# 功能:RNC-seq数据针对性修剪(解决接头污染和GC异常)
# 输入:配对的R1/R2 FASTQ文件
# 输出:修剪后的FASTQ文件 + 质检报告
# 设置工作目录和文件
WORKDIR="/home/data/t210424/test"
OUTDIR="$WORKDIR/trimmed_results"
ADAPTERS="/home/data/t210424/miniconda3/envs/m6a/share/trimmomatic-0.39-2/adapters/TruSeq3-PE-2.fa" # 需替换为实际接头文件路径
THREADS=8 # 根据服务器CPU核心数调整
# 创建输出目录
mkdir -p $OUTDIR
# 增强版Trimmomatic修剪(重点解决接头污染)
echo "=== 开始针对性修剪(解决接头污染问题)==="
for R1 in $WORKDIR/*R1.raw.fastq.gz; do
R2=${R1/R1/R2}
BASE=$(basename $R1 .R1.raw.fastq.gz)
echo "处理样本: $BASE"
# 核心修剪命令(针对RNC-seq优化)
trimmomatic PE -threads $THREADS -phred33 \
$R1 $R2 \
$OUTDIR/${BASE}.R1.trimmed.fq.gz $OUTDIR/${BASE}.R1.unpaired.fq.gz \
$OUTDIR/${BASE}.R2.trimmed.fq.gz $OUTDIR/${BASE}.R2.unpaired.fq.gz \
ILLUMINACLIP:$ADAPTERS:2:30:10:8:true \
SLIDINGWINDOW:5:20 \
LEADING:25 \
TRAILING:25 \
MINLEN:28 \
MAXINFO:28:0.8
# 修剪后立即进行快速QC验证
fastqc -t $THREADS $OUTDIR/${BASE}.*.trimmed.fq.gz -o $OUTDIR
done
# 生成修剪总结报告
echo "=== 生成修剪质量报告 ==="
multiqc $OUTDIR -o $OUTDIR/trim_report
echo "修剪完成!结果保存在: $OUTDIR"
echo "请检查trim_report中的Adapter Content和Per Base Sequence Content改善情况"
# 赋予执行权限
chmod +x rnc_trim_optimized.sh
# 运行脚本
./rnc_trim_optimized.sh
hisat比对到bigwig文件生成
#!/bin/bash
# 脚本名称:rnc_hisat2_bigwig.sh
# 功能:对修剪后的RNC-seq数据执行比对和BigWig转换
# 输入:修剪后的FASTQ文件(双端)
# 输出:BAM、BIGWIG文件
# 设置路径
WORKDIR="/home/data/t210424/test"
TRIM_DIR="$WORKDIR/trimmed_results"
OUTPUT_DIR="$WORKDIR/hisat2_results"
REF_INDEX="/path/to/genome/index/base" # 替换为实际的索引路径(不含后缀)
GENOME_SIZE="/path/to/genome.sizes" # 替换为实际的基因组大小文件
THREADS=8
# 创建输出目录
mkdir -p $OUTPUT_DIR
# 使用Hisat2进行比对(针对RNC-seq优化参数)
echo "=== 开始Hisat2比对 ==="
for R1 in $TRIM_DIR/*R1.trimmed.fq.gz; do
R2=${R1/R1/R2}
SAMPLE=$(basename $R1 | cut -d '.' -f 1)
echo "处理样本: $SAMPLE"
# Hisat2比对(针对短片段优化)
hisat2 --seed 123 \
--score-min C,0 -k 1 \
--pen-noncansplice 1000000 \
--rna-strandness RF \
-X 1000 \
--no-softclip \
-p $THREADS \
-x $REF_INDEX \
-1 $R1 \
-2 $R2 \
-S $OUTPUT_DIR/${SAMPLE}.sam
# 转换SAM为BAM并排序
echo "排序和索引BAM..."
samtools view -@ $THREADS -bS $OUTPUT_DIR/${SAMPLE}.sam > $OUTPUT_DIR/${SAMPLE}.unsorted.bam
samtools sort -@ $THREADS -o $OUTPUT_DIR/${SAMPLE}.sorted.bam $OUTPUT_DIR/${SAMPLE}.unsorted.bam
samtools index -@ $THREADS $OUTPUT_DIR/${SAMPLE}.sorted.bam
# 删除临时文件
rm $OUTPUT_DIR/${SAMPLE}.sam $OUTPUT_DIR/${SAMPLE}.unsorted.bam
# 转换为BigWig(核糖体足迹优化参数)
echo "生成BigWig文件..."
bamCoverage \
-b $OUTPUT_DIR/${SAMPLE}.sorted.bam \
-o $OUTPUT_DIR/${SAMPLE}.bw \
--binSize 1 \ # 核糖体定位需要单碱基分辨率
--normalizeUsing CPM \
--extendReads --ignoreDuplicates \
--Offset 12 \ # 核糖体A位点偏移(P-site offset)
--smoothLength 0 \ # 禁用平滑以保持单碱基精确度
--numberOfProcessors $THREADS
echo "完成: $SAMPLE"
done
echo "=== 全部样本处理完毕 ==="
echo "结果保存在: $OUTPUT_DIR"
# 赋予执行权限
chmod +x rnc_hisat2_bigwig.sh
# 运行脚本
./rnc_hisat2_bigwig.sh