亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? traindata.cpp

?? 該程序包實現了三個模式識別的聚類算法
?? CPP
字號:
#include "stdlib.h"
#include <iostream>
#include <string.h>
#include <fstream>
#include <math.h>
using namespace std;
#include "global.h"

CSampleData::CSampleData()
{
	this->numClass = 0;
	this->numFeature = 0;
	this->numSample = 0;
	this->nameClass = NULL;
	this->xdata = NULL;
	this->ydata = NULL;
	this->maxValue = NULL;
	this->minValue = NULL;
}

CSampleData::~CSampleData()
{
	if (this->nameClass != NULL)
		delete[] this->nameClass;
	if (this->xdata != NULL)
		delete[] this->xdata;
	if (this->ydata != NULL)
		delete[] this->ydata;
	if (this->maxValue != NULL)
		delete[] this->maxValue;
	if (this->minValue != NULL)
		delete[] this->minValue;
}

bool CSampleData::readFile(char* fileName)
{
	bool ret = true;
	ifstream ifs(fileName);
	int bufSize = 1024;
	char* buf=new char[bufSize];
	char* temp=new char[bufSize];
	int n=0;
	int i, j, k, index;
	//獲取特征數
	if (ifs.good()) {
		ifs.getline(buf, bufSize);
		n=0;
		while (*(buf+n)!=0 && n<bufSize)
		{
			if (*(buf+n)==',')
				this->numFeature ++;
			n++;
		}
	}
	else
		ret = false;
	ifs.seekg(0, ios::beg);
	//獲取總行數
	n=0;
	while (ifs.good()) {
		ifs.getline(buf, bufSize);
		n++;
	}
	this->numSample = n;
	ifs.clear();
	ifs.seekg(0, ios::beg);
	//讀入采樣數據
	this->xdata = new DOUBLE[(this->numSample)*(this->numFeature)];
	this->ydata = new int[this->numSample];
	this->nameClass = new char*[this->numSample];//現在不知道類別數,先用采樣數來代替,浪費一些內存

	int cnum;
	i=0;//用來記錄采樣數
	while (ifs.good()) {
		ifs.getline(buf, bufSize);
		n=0;
		while (*(buf+n)!=',' && n<bufSize)
		{
			*(temp+n)=*(buf+n);
			n++;
		}
		*(temp+n)=0;
		cnum=this->searchClassName(temp);
		if (cnum==-1)//新類別
		{
			this->nameClass[this->numClass] = new char[strlen(temp)];
			strcpy(this->nameClass[this->numClass], temp);
			this->ydata[i]=this->numClass;
			this->numClass ++;
		}
		else
			this->ydata[i]=cnum;
		for (j=0; j<this->numFeature; j++)
		{
			n++;
			int n2=n;
			while (*(buf+n)!=',' && *(buf+n)!=0 && n<bufSize)
			{
				*(temp+n-n2)=*(buf+n);
				n++;
			}
			*(temp+n-n2)=0;
			this->xdata[i*this->numFeature+j]=atof(temp);
		}
		i++;
	}
	if (i!=this->numSample)
		ret = false;
	delete[] buf;
	delete[] temp;
    ifs.close();
	return ret;
}

bool CSampleData::writeFile(char* fileName)
{
	bool ret = true;
	ofstream ofs(fileName);
	int i, j, k, index;
	char* str = NULL;
	char* buf = new char[256];
	bool flag = false;
	DOUBLE temp;
	
	for (i=0; i<this->numSample; i++) {
		if (flag)
			ofs.write("\n", 1);
		else
			flag = true;
		str = this->nameClass[this->ydata[i]];
		ofs.write(str, strlen(str));
		ofs.write(",", 1);
		for (j=0; j<this->numFeature; j++)
		{
			temp = this->xdata[i*this->numFeature+j];
			if (temp!=((DOUBLE)((int)temp)))
				sprintf(buf, "%.6f", temp);
			else
				sprintf(buf, "%d", (int)temp);
			ofs.write(buf, strlen(buf));
			if (j!=(this->numFeature-1))
				ofs.write(",", 1);
		}
	}
	ofs.close();
	return ret;
}

bool CSampleData::normalize()
{
	bool ret = true;
	int i, j, index;
	this->maxValue = new DOUBLE[this->numFeature];
	this->minValue = new DOUBLE[this->numFeature];
	DOUBLE temp;
	for (j=0; j<this->numFeature; j++)
	{
		this->maxValue[j] = this->xdata[j];
		this->minValue[j] = this->xdata[j];
	}
	for (i=1; i<this->numSample; i++)
	{
		for (j=0; j<this->numFeature; j++)
		{
			temp = this->xdata[i*this->numFeature+j];
			if (this->maxValue[j]<temp)
				this->maxValue[j]=temp;
			else if (this->minValue[j]>temp)
				this->minValue[j]=temp;
		}
	}
	for (j=0; j<this->numFeature; j++)
	{
		if (this->minValue[j]<this->maxValue[j])
		{
			temp = this->maxValue[j]-this->minValue[j];
			for (i=0; i<this->numSample; i++)
			{
				index = i*this->numFeature+j;
				this->xdata[index] = (this->xdata[index]-this->minValue[j])/temp;
			}
		}
		else
		{
			for (i=0; i<this->numSample; i++)
			{
				this->xdata[i*this->numFeature+j] = 0.5;
			}
		}
	}
	return ret;
}

int CSampleData::searchClassName(char* className)
{
	for (int n=0; n<this->numClass; n++)
	{
		if (strcmp (className, this->nameClass[n])==0)
			return n;
	}
	return -1;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
麻豆成人久久精品二区三区红 | 国产亚洲精品aa午夜观看| 国产欧美日韩视频在线观看| 一区二区理论电影在线观看| 狠狠v欧美v日韩v亚洲ⅴ| 91小视频免费观看| 久久久久久亚洲综合| 亚洲成人资源在线| 91丨九色丨尤物| 久久久久国产成人精品亚洲午夜 | 色综合久久六月婷婷中文字幕| 日韩一区二区三免费高清| 一区二区三区欧美日| 日韩午夜激情电影| 欧美性xxxxxxxx| 欧美一级精品在线| 久久久久久免费网| 中文字幕综合网| 亚洲电影一级片| 日韩avvvv在线播放| 国产美女娇喘av呻吟久久| 成人小视频免费在线观看| 性欧美疯狂xxxxbbbb| 韩国视频一区二区| 久久久噜噜噜久久人人看 | 亚洲理论在线观看| 99麻豆久久久国产精品免费优播| 国产网红主播福利一区二区| 国产美女精品在线| 国产亚洲人成网站| 国产成人在线看| 日本一区二区视频在线观看| 经典三级视频一区| 884aa四虎影成人精品一区| 午夜成人免费视频| 欧美成人激情免费网| ...xxx性欧美| 久久精品免费观看| 91激情在线视频| 26uuu欧美| 亚洲图片欧美综合| 国产成人免费视频网站高清观看视频| 91麻豆国产福利在线观看| 欧美电影免费观看高清完整版在线观看| 国产欧美日韩亚州综合| 天天影视涩香欲综合网| www.亚洲色图| 久久麻豆一区二区| 天天av天天翘天天综合网| 成人精品视频.| 欧美一区二区三区视频免费 | 日韩理论在线观看| 久久99精品国产麻豆婷婷| 欧美在线啊v一区| 日本一区二区三区久久久久久久久不| 视频在线观看一区二区三区| 91在线视频在线| 国产精品麻豆网站| 国产黄色91视频| 亚洲精品在线电影| 精品一区二区综合| 337p亚洲精品色噜噜| 亚洲国产婷婷综合在线精品| 成人av手机在线观看| 久久精品一区二区三区四区| 伦理电影国产精品| 欧美一区二区播放| 日韩中文字幕不卡| 在线不卡一区二区| 午夜视频一区二区三区| 欧美亚洲另类激情小说| 一区二区三区国产精品| 99久久综合色| 国产精品久久看| 成人激情电影免费在线观看| 国产欧美一区二区三区在线看蜜臀 | 久久精品国产在热久久| 欧美日韩国产美| 日本人妖一区二区| 91精品福利在线一区二区三区| 亚洲午夜久久久久久久久电影院| 91成人免费电影| 亚洲免费电影在线| 在线一区二区三区四区五区 | 日韩电影免费在线| 精品少妇一区二区三区免费观看 | 欧美精品色综合| 美腿丝袜亚洲综合| 久久综合久久综合久久综合| 国产成人自拍高清视频在线免费播放| 国产片一区二区| av高清久久久| 午夜精品久久久久久久久| 6080国产精品一区二区| 韩国欧美国产一区| 亚洲欧洲日韩女同| 欧美视频自拍偷拍| 美女一区二区三区在线观看| 久久久精品黄色| 色www精品视频在线观看| 亚洲成a人片综合在线| 欧美不卡一二三| 91视频在线观看免费| 视频一区国产视频| 欧美国产精品v| 在线观看国产精品网站| 久久精品国产一区二区三| 国产精品国产三级国产三级人妇 | 青青草原综合久久大伊人精品优势 | 欧美伊人久久久久久久久影院| 日本中文一区二区三区| 国产精品水嫩水嫩| 在线播放91灌醉迷j高跟美女| 国产成人午夜高潮毛片| 亚洲成a人在线观看| 中文字幕第一区| 在线综合+亚洲+欧美中文字幕| 丰满少妇在线播放bd日韩电影| 亚洲国产精品天堂| 国产精品无圣光一区二区| 91精品国产综合久久久久| 99精品久久久久久| 国产一区二区剧情av在线| 亚洲成a人片综合在线| 中文字幕巨乱亚洲| 精品国产一区二区国模嫣然| 在线免费观看一区| 成人污污视频在线观看| 久久精品国产亚洲a| 亚洲成a人v欧美综合天堂| 亚洲少妇最新在线视频| 欧美r级在线观看| 欧美日韩国产123区| 91久久久免费一区二区| 大桥未久av一区二区三区中文| 美女精品自拍一二三四| 午夜久久久影院| 亚洲在线一区二区三区| 中文字幕亚洲视频| 国产精品久久久久久久第一福利| 精品国产自在久精品国产| 欧美精品日日鲁夜夜添| 欧美网站大全在线观看| 91在线一区二区| 91麻豆产精品久久久久久| 成人开心网精品视频| 成人免费视频视频在线观看免费| 国内精品久久久久影院色| 麻豆freexxxx性91精品| 老司机精品视频导航| 看电视剧不卡顿的网站| 日韩高清在线不卡| 久久精品噜噜噜成人88aⅴ| 久久精品国产精品青草| 精品影视av免费| 精品一区二区久久久| 蜜桃免费网站一区二区三区| 免费观看30秒视频久久| 蜜桃av一区二区在线观看 | 亚洲精品一区二区三区福利| 久久综合色之久久综合| 国产欧美日韩久久| 中文字幕在线不卡一区| 亚洲人成7777| 午夜视黄欧洲亚洲| 久久av资源站| 成人福利视频在线看| 色婷婷久久久亚洲一区二区三区| 日本福利一区二区| 91精品国产欧美一区二区18 | 色综合天天综合给合国产| 色狠狠一区二区三区香蕉| 欧美丝袜丝交足nylons图片| 欧美挠脚心视频网站| 精品av久久707| 国产精品精品国产色婷婷| 亚洲一区精品在线| 麻豆国产精品官网| 成人高清免费观看| 欧美老年两性高潮| 久久综合狠狠综合| 亚洲精品大片www| 美女视频第一区二区三区免费观看网站| 久久爱另类一区二区小说| 成人福利在线看| 欧美一区二区精品久久911| 国产亚洲欧美日韩日本| 亚洲资源在线观看| 国产激情一区二区三区桃花岛亚洲| 97se亚洲国产综合自在线| 欧美一级理论片| 成人欧美一区二区三区视频网页| 五月激情六月综合| 成人动漫一区二区在线| 欧美一级久久久久久久大片| 国产精品久久网站| 久久超碰97人人做人人爱| 欧美在线视频全部完| 久久精品人人做人人综合 | 丰满少妇久久久久久久|