⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 atd.tff

📁 toolbox of BVQX, This is the access between BV and matlab. It will help you to analysis data from BV
💻 TFF
字号:
# TextFileFormat (leave this tag as magic token!)

# BVQX file format for ATD files (Ancova Table Datafiles)
# ATD FileVersions supported: 2
#
# Version:  v0.7a
# Build:    7080909
# Date:     Aug-09 2007, 9:10 AM CEST
# Author:   Jochen Weber, Brain Innovation, B.V., Maastricht, NL
# URL/Info: http://wiki.brainvoyager.com/BVQXtools

# FILE FORMAT
ArrayFormat: %-12s
Description:Anova Table Datafiles
Extensions:atd
FieldDelimiters: {[32]}
LineDelimiters: {[13, 10], [10]}
ParagraphArrays:0
SkipEmptyLines:1
Magic:|
name          |range       |type    |magic
ATD_header    |1, 256      |regexp  |^\s*FileVersion\:\s*\d+\s+NrOfSubjectRows
EndMagic

# FIELDS
ListOfFields:!
type !cond               !field               !datatype!format !dim    !default !varname
FIELD!                   !FileVersion         !double  !%d     !1      !2       !FileVersion
WRTLN!!!!!!!  # empty line
EXPRE!$TFFWRITE     !!!!!!@NrOfSubjectRows = size(@SubjectData, 1); if @NrOfSubjectRows ~= numel(@SubjectNames), error('Invalid object'); end, @NrOfDataColumns = size(@SubjectData, 2); @NrOfGroupingColumns = size(@GroupingData, 2); @NrOfCovariateColumns = size(@CovariateData, 2); if any([size(@GroupingData, 1), size(@CovariateData, 1)] ~= @NrOfSubjectRows), error('Invalid object'); end, if @NrOfDataColumns ~= numel(@DataColumnNames) || @NrOfGroupingColumns ~= numel(@GroupingColumns) || @NrOfCovariateColumns ~= numel(@CovariateNames), error('Invalid object'); end
FIELD!                   !NrOfSubjectRows     !double  !%d     !1      !        !NrOfSubjectRows
FIELD!                   !NrOfDataColumns     !double  !%d     !1      !        !NrOfDataColumns
FLIST!                   !NrOfGroupingColumns !double  !%d     !1      !0       !NrOfGroupingColumns
FLIST!                   !NrOfCovariateColumns!double  !%d     !1      !0       !NrOfCovariateColumns
EXPRE!!!!!!!$NrOfCols = @NrOfDataColumns + @NrOfGroupingColumns + @NrOfCovariateColumns;
EXPRE!$TFFREAD      !!!!!!@SubjectNames = cell(@NrOfSubjectRows, 1); @DataColumnNames = cell(@NrOfDataColumns, 1); @SubjectData = zeros(@NrOfSubjectRows, @NrOfDataColumns); @GroupingColumns = cell(@NrOfGroupingColumns, 1); @GroupingData = zeros(@NrOfSubjectRows, @NrOfGroupingColumns); @CovariateNames = cell(@NrOfCovariateColumns, 1); @CovariateData = zeros(@NrOfSubjectRows, @NrOfCovariateColumns);
WRTLN!!!!!!!  # empty line

# treat reading and writing differently
BLOOP!$TFFREAD      !!!!1 !!ATDread
EXPRE!!!!!!!$hl = strrep(linecont{linec}, char(9), ' '); while ~isempty(strfind($hl, '  ')), $hl = strrep($hl, '  ', ' '); end, $cnames = splittocell($hl(2:end-1), '" "'); $cnames = $cnames(:); if numel($cnames) ~= ($NrOfCols + 1) || ~strcmp($cnames{1}, 'Subjects'), error('Invalid input file'); end, linec = linec + 1; @DataColumnNames = $cnames(2:1+@NrOfDataColumns); if @NrOfGroupingColumns > 0, @GroupingColumns = $cnames(2+@NrOfDataColumns:1+@NrOfDataColumns+@NrOfGroupingColumns); end, if @NrOfCovariateColumns > 0, @CovariateNames = $cnames(end+1-@NrOfCovariateColumns:end); end
BLOOP!              !!!!@NrOfSubjectRows !!RSubjNum
EXPRE!!!!!!!$sl = linecont{linec}; linec = linec + 1; if numel($sl) < 10 || ~strcmp($sl(1:9), '"Subject '), error('Invalid input file'); end, $sne = find($sl(10:end) == '"'); if isempty($sne), error('Invalid input file'); end, @SubjectNames{$RSubjNum} = $sl(10:$sne(1)+8); $dline = splittocell($sl($sne(1)+10:end), char([9, 32]), 1, 1); if isempty($dline), error('Invalid input file'); end, if isempty($dline{1}), $dline(1) = []; end, if numel($dline) ~= $NrOfCols, error('Invalid input file'); end, if @NrOfDataColumns > 0, @SubjectData($RSubjNum, :) = eval(['[' gluetostring($dline(1:@NrOfDataColumns), ',') ']']); end, if @NrOfGroupingColumns > 0, @GroupingData($RSubjNum, :) = eval(['[' gluetostring($dline(@NrOfDataColumns+1:@NrOfDataColumns+@NrOfGroupingColumns), ',') ']']); end, if @NrOfCovariateColumns > 0, @CovariateData($RSubjNum, :) = eval(['[' gluetostring($dline(end+1-@NrOfCovariateColumns:end), ',') ']']); end
ELOOP!              !!!! !!RSubjNum
ELOOP!              !!!! !!ATDread

# writing code
BLOOP!$TFFWRITE     !!!!1 !!ATDwrite
WRTLN!!!!!!!%['"Subjects"        "' gluetostring([@DataColumnNames(:);@GroupingColumns(:);@CovariateNames(:)] ,'" "') '"']%
BLOOP!              !!!!@NrOfSubjectRows !!WSubjNum
EXPRE!!!!!!!$dl = [@SubjectData($WSubjNum, :), @GroupingData($WSubjNum, :), @CovariateData($WSubjNum, :)];
WRTLN!!!!!!!%sprintf('"Subject %s" %s', @SubjectNames{$WSubjNum}, sprintf('     %7f', $dl))%
ELOOP!              !!!! !!WSubjNum
ELOOP!              !!!! !!ATDwrite

EndListOfFields

NewFileCode:!
@FileVersion = 2;
@NrOfSubjectRows = 0;
@NrOfDataColumns = 0;
@NrOfGroupingColumns = 0;
@NrOfCovariateColumns = 0;
@SubjectNames = cell(@NrOfSubjectRows, 1);
@DataColumnNames = cell(@NrOfDataColumns, 1);
@SubjectData = zeros(@NrOfSubjectRows, @NrOfDataColumns);
@GroupingColumns = cell(@NrOfGroupingColumns, 1);
@GroupingData = zeros(@NrOfSubjectRows, @NrOfGroupingColumns);
@CovariateNames = cell(@NrOfCovariateColumns, 1);
@CovariateData = zeros(@NrOfSubjectRows, @NrOfCovariateColumns);
EndNewFileCode

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -