Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
@antv/data-wizard
Advanced tools
English | 简体中文
The framework of DataWizard is as follows:
DataWizard can help you extract information of fields from a dataset sample by its DataFrame
module. You can get or slice data by it. The information includes the field's characteristics (field name, data type, statistics, etc.) and properties (continuity, discreteness, etc.), as well as field-to-field relationships (correlation, periodicity, etc.).
For relational data (network data), DW processes and analyzes it through the GraphData
module, which supports reading nodes-links data, links arrays, and hierarchical data. Using GraphData
, you can parse arrays, graph data and hierarchical data, and extract common-used structural and statistical features. Also, the nodes and edges can be converted to DataFrame
, and its API to analyze the statistics of each node field and link field.
In short, DataFrame
and GraphData
can help you understand and process a dataset. This is the premise of data analysis and Automatic chart recommendation.
The statistics
module of DataWizard provides common statistical methods, including computing minimum, maximum, variance, Pearson correlation coefficient, etc. The statistical information extracting of DataFrame
and GraphData
is also based on statistics
.
The random
module of DataWizard provides you comprehensive data mocking options. Data types include basic data, text data, datetime data, color data, Web data, location data, Chinese data address, etc.. You can use it to quickly develop some data generating or auto-filling functions. For example, the auto-fill function in the desgin engineering plugin Kitchen.
$ npm install @antv/data-wizard
import { DataFrame } from '@antv/data-wizard';
/* Basic usage */
const df = new DataFrame([
{ a: 1, b: 4, c: 7 },
{ a: 2, b: 5, c: 8 },
{ a: 3, b: 6, c: 9 },
]);
/*
DataFrame
{
axes: [
[0, 1, 2],
['a', 'b', 'c'],
],
data: [
[1, 4, 7],
[2, 5, 8],
[3, 6, 9],
],
colData: [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
],
}
*/
/** Get statistical information */
df.info();
/*
[
{
count: 3,
distinct: 3,
type: 'integer',
recommendation: 'integer',
missing: 0,
rawData: [1, 2, 3],
valueMap: { '1': 1, '2': 1, '3': 1 },
minimum: 1,
maximum: 3,
mean: 2,
percentile5: 1,
percentile25: 1,
percentile50: 2,
percentile75: 3,
percentile95: 3,
sum: 6,
variance: 0.6666666666666666,
standardDeviation: 0.816496580927726,
zeros: 0,
levelOfMeasurements: ['Interval', 'Discrete'],
name: 'a',
},
{
count: 3,
distinct: 3,
type: 'integer',
recommendation: 'integer',
missing: 0,
rawData: [4, 5, 6],
valueMap: { '4': 1, '5': 1, '6': 1 },
minimum: 4,
maximum: 6,
mean: 5,
percentile5: 4,
percentile25: 4,
percentile50: 5,
percentile75: 6,
percentile95: 6,
sum: 15,
variance: 0.6666666666666666,
standardDeviation: 0.816496580927726,
zeros: 0,
levelOfMeasurements: ['Interval', 'Discrete'],
name: 'b',
},
{
count: 3,
distinct: 3,
type: 'integer',
recommendation: 'integer',
missing: 0,
rawData: [7, 8, 9],
valueMap: { '7': 1, '8': 1, '9': 1 },
minimum: 7,
maximum: 9,
mean: 8,
percentile5: 7,
percentile25: 7,
percentile50: 8,
percentile75: 9,
percentile95: 9,
sum: 24,
variance: 0.6666666666666666,
standardDeviation: 0.816496580927726,
zeros: 0,
levelOfMeasurements: ['Interval', 'Discrete'],
name: 'c',
},
]
*/
import { statistics as stats } from '@antv/data-wizard';
/** Calculate minimum */
stats.min([1, 2, 3, 201, 999, 4, 5, 10]);
// 1
/** Calculate variance */
stats.variance([1, 2, 3, 201, 999, 4, 5, 10]);
// 106372.359375
/** Calculate Pearson correlation coefficient */
stats.pearson([1, 2, 3, 201, 999, 4, 5, 10], [12, 22, 23, 2201, 2999, 24, 25, 210]);
// 0.8863724626851197
import { random } from '@antv/data-wizard';
const r = new random();
/** Mock boolean */
r.boolean();
// true
/** Mock phone number */
r.phone({asterisk: true});
// '182****8595'
/** Mock datatime */
r.datetime();
// '2019-01-23T09:54:06+08:00'
/** Mock color */
r.rgb();
// 'rgb(202,80,38)'
/** Mock URL */
r.url();
// 'http://alo.tg/vivso'
/** Mock coordinates */
r.coordinates();
// '95.7034666, 80.9377218'
/** Mock Chinese address */
r.address();
// '广东省惠州市龙门县黄河胡同378号'
For more usages, please check the API reference.
MIT
FAQs
A js/ts library for data processing
The npm package @antv/data-wizard receives a total of 119 weekly downloads. As such, @antv/data-wizard popularity was classified as not popular.
We found that @antv/data-wizard demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 64 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.