This commit is contained in:
张壹 2025-07-25 12:18:28 +08:00
parent a455a10150
commit 3b9dee6900
4 changed files with 11 additions and 9 deletions

View File

@ -55,7 +55,7 @@ int ADDNOSIE::Addnoise(std::string infilename, std::string outfilename, int orde
int data_num = in_data_.size();
double tmp_dou;
gctl::array<double> noises(data_num);
noises.random_float(noise_mean_, noise_dev_);
random_float(noises, noise_mean_, noise_dev_);
for (int i = 0; i < data_num; i++)
{
tmp_dou = in_data_.at(i).at(order) + noises.at(i);

View File

@ -389,8 +389,8 @@ void statistic(const std::vector<std::string> &cmd_units)
{
tc.get_column(data, cmd_units[i]);
std::clog << "column: " << cmd_units[i]
<< " | " << data.min() << "/" << data.mean() << "/" << data.max()
<< " | STD: " << data.std() << "\n";
<< " | " << min(data) << "/" << mean(data) << "/" << max(data)
<< " | STD: " << gctl::std(data) << "\n";
}
return;
}
@ -476,7 +476,7 @@ void rand_data(const std::vector<std::string> &cmd_units)
double p1 = atof(cmd_units[2].c_str());
double p2 = atof(cmd_units[3].c_str());
array<double> rd_data(tc.row_number());
rd_data.random_float(p1, p2, rd_type);
random_float(rd_data, p1, p2, rd_type);
if (cmd_units.size() >= 5) tc.fill_column(rd_data, cmd_units[4], 12);
else

View File

@ -29,6 +29,7 @@
#define GCTL_DSVIEWER_H
#include <regex>
#include "gctl/core/array_algorithm.h"
#include "gctl/io.h"
using namespace gctl;

View File

@ -25,6 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "gctl/core/array_algorithm.h"
#include "gctl/optimization/lgd.h"
class levy_planner : public gctl::lgd_solver
@ -64,17 +65,17 @@ int main(int argc, char *argv[]) try
dist[i] *= alpha;
}
double mean = dist.mean();
double std = dist.std();
double d_mean = mean(dist);
double d_std = gctl::std(dist);
double cnt = 0.0;
for (size_t i = 0; i < dist.size(); i++)
{
if (fabs(dist[i] - mean) > 3.0*std) cnt += 1.0;
if (fabs(dist[i] - d_mean) > 3.0*d_std) cnt += 1.0;
}
std::cout << "Step Avg. = " << mean << "\n";
std::cout << "Step STD = " << std << "\n";
std::cout << "Step Avg. = " << d_mean << "\n";
std::cout << "Step STD = " << d_std << "\n";
std::cout << "Large Ones = " << cnt/1000.0 << "%\n";
return 0;
}