0330——python实现bayes分类器

http://python.jobbole.com/81019/

为了学习Beyas并且练习python,按照上面地址的文章里面,一步步的实现。由于python基础比较弱,所以最简单的程序,也有可能需要我没见过并且解决不了的问题。

1. 处理数据。

用的数据是pima-indians-diebetes.csv,上文贴出的该数据集的地址已经失效,从CSDN的下载区下载的。

数据共包括768行9列(8列属性,一列label),

def loadCsv(filename):
	lines = csv.reader(open(filename, "r"))
	dataset = list(lines)            #好像是把一个迭代器变成list
	print('lines:', lines)
	print('dataset:', dataset)
	for i in range(len(dataset)):
		dataset[i] = [float(x) for x in dataset[i]]   #把string变成float
	print('dataset after process:', dataset)
	return dataset
lines: <_csv.reader object at 0x000001DF4F980048>
dataset[0]: ['6', '148', '72', '35', '0', '33.6', '0.627', '50', '1']
dataset[0] after process: [6.0, 148.0, 72.0, 35.0, 0.0, 33.6, 0.627, 50.0, 1.0]
# **************************************************************
#  split dataset into two parts:  train and test
def splitDataset(dataset,splitRatio):
   '''
   split dataset into two parts:
   train and test
   '''
   trainSize = int(len(dataset)*splitRatio)
   trainSet = []
   copy = list(dataset)
   while len(trainSet) < trainSize:
      index = random.randrange(len(copy))
      trainSet.append(copy.pop(index))
   return [trainSet, copy]

splitRatio=0.67
train, test = splitDataset(dataset_pima, splitRatio)
print('** Get {0} train samples and {1} test sample.'.format(len(train), len(test)))

    出问题的是最后这句:

print('** Get {0} train samples and {1} test sample.'.format(len(train), len(test)))
print('** Get {0} train samples and {1} test sample.').format(len(train), len(test))
原文是第二句,差别在.format前的“)”,如果是第二种,相当于print().format,而print是打印语句,返回为None,则None是没有format属性的。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值