xval.sh

来自「数据挖掘中的bayes算法,很好的代码」· Shell 代码 · 共 35 行

SH
35
字号
#!/bin/shif (( $# < 2 )); then  echo "usage: xval.sh data target [folds]"  echo "data    name of the data file (without extension)"  echo "target  name of the target attribute"  echo "folds   number of folds (default: 3)"  exitfidata=$1target=$2folds=${3:-3}tsplit -xc$target $data.tab -t$folds 2>/dev/nullrm -rf xval.tmpfor (( i = 0; i < folds; i++ )); do  list=""  for (( k = 0; k < folds; k++ )); do    if (( k != i )); then list="$list $k.tab"; fi  done  tmerge $list - 2>/dev/null | \    bci $data.dom - - 2>/dev/null | \    bcx - $i.tab 2>&1 | \    gawk '($2 ~ "error[(]s[)]") {      printf("%s %s\n", $1, substr($3, 2, length($3)-3)) }' \    >> xval.tmpdonecnt=`wc -l $data.tab | gawk '{ print $1 }'`gawk -v sum=$(( cnt -1 )) '{ cnt += $1; }END { printf("%d error(s) (%.2f%%)\n", cnt, cnt/sum *100) }' xval.tmprm -rf $list $(( folds -1 )).tab xval.tmp

⌨️ 快捷键说明

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