dataframe
Install
$ spm install dataframe --save
Usage
var Frame = ; var data = "name":"Mazda""mpg":"RX4""cyl":21"disp":6"hp":160"drat":110"wt":39"qsec":262"vs":1646"am":0"gear":1"carb":4 "name":"Mazda""mpg":"RX4""cyl":"Wag""disp":21"hp":6"drat":160"wt":110"qsec":39"vs":2875"am":1702"gear":0"carb":1;// 创建 framevar f = data; // use dataframe
API
属性
Boolean
isFrame - 是否是数据集合
Array
arr - 数据集合的列数组,每列是一个子数组
Array
names - 列名称
方法
Array
colNames() - 返回 names
Number
colCount() - 数据集合列的个数
Number
colIndex(name) - 根据列名称获取对应的索引
Array
colArray(name) - 根据列名称、索引获取列对应的数组
chainable
colReplace(name,arr) - 替换数据集合中的列数组
- name 可以是列名称也可以是索引
- 返回数据集合本身,数据集合发生改变
Number
rowCount() - 数据集合行的个数
Object
rowObject(index) - 根据索引获取行对象
*
cell(rowIndex,colName) - 返回指定行索引和列名称(列索引)的数值
Array
toArray() - 将数据集合生成列数组
Array
toJSON() - 将数据集合生成JSON 数组
String
s() - 将整个数据集合生成字符串,一般用于调试输出现有集合
下列方法生成新的数据集合
Frame
col(name) - 根据列名称或者索引生成新的数据集合
Frame
cols(names) - 根据多个列名称或者索引生成新的数据集合
Frame
row(rowInde) - 根据行索引生成新的数据集合
Frame
rows(rowIndexs) - 根据多个行索引生成新的数据集合
Frame
sub(startCol,endCol,startRow,endRow) - 根据行和列获取一个子集合
静态方法
Number
mean(frame,x) - 计算列x的平局值
Number
geometric_mean(frame,x) - 计算列x的列的几何均值
Number
sum(frame,x) - 计算列x的和
Number
max(frame,x) - 计算列x的最大值
Number
min(frame,x) - 计算列x的最小值
Array
range(frame,x) - 计算列x的最小值和最大值
Number
model(frame,x) - 计算列x的众数,最多的数
Number
median(frame,x) - 计算列x的中位数
Number
variance(frame,x) - 计算列x的方差
Number
standard_deviation(frame,x) - 计算列x的标准方差
Frame
sort(frame,x) - 返回按照列排序后的数据集合
Array
group(frame,condition) - 按照条件进行分组,返回 [frame1,frame2...framen]
- condition条件可以是列名的数组也可以是一个函数返回一个唯一的键值
Array
groupToMap(frame,condition) - 按照条件进行分组,形成map,键值对,返回 {key1: frame1,key2: frame2,key3: frame3....keyn:framen}
- condition条件可以是列名的数组也可以是一个函数返回一个唯一的键值
Frame
complement(frame,cols) - 取指定列的补集组成的数据集合,例如 names: ['a','b','c','d'], Frame.complement(frame,['a','c']),生成的names : ['b','d']的数据集合
Frame
merge(frame1,frame2...framen) - 合并传入的集合成为一个集合,列不发生变化,假设传入的集合的列一致,仅是增加行
Frame
combin(frame1,frame2...framen) - 合并传入的集合成为一个集合,列进行组合,行的数目不变,仅仅是列变化