二维存储结构的数据

1. 数据对象

  1. 以下对象可以以一致的方式来编辑和计算:

  1. 数据被表示为二维存储结构:

2. 定义数据列

2.1 数据列的管理界面

在数据处理的“列”页签下,在表格中增/删/改数据的列:

  1. 列名不能为空也不能重复。

  2. 直接点击表格单元以编辑

  3. 也可以选择列并点击“编辑”按钮以弹出列的编辑窗。

  4. 可以重命名所有字段为序列号。

  5. 可以随机设置颜色。

  6. 可以调整列的顺序。

  7. 点击按钮“确定”以把列的修改应用于当前数据。

  8. 点击按钮“取消”以丢弃修改并从当前数据读取列的定义。

  9. 修改未保存时,若修改未应用于数据,则页签头显示**,否则页签头显示*。

2.2 列的类型

  1. 列的类型包括:字串、双精度、浮点、长整型、整型、短整型、布尔型、日期时间、日期、纪元、经度、纬度、枚举型、色彩。

  2. 此属性用于数据的显示、编辑、计算、和保存。

  3. 通常应成对定义经度和纬度。

2.3 列的格式

  1. 此属性主要用于显示,在编辑输入数值时不会自动应用格式、而是保持原始的输入。

  2. 在一些界面上,如“复制”或“导出”,可选“按照列的格式保存日期/时间/纪元和数字”。

2.3.1 数字的格式

对于数字类型,可选:以千分组、以万分组、科学计数法、无格式。

2.3.2 日期时间/日期的格式

对于日期时间/日期类型,支持:MM/dd/yy、yy-MM-dd、毫秒、时区、T分隔、补全世纪。

2.3.3 纪元的格式

对于纪元类型,支持:M/d/y、y-M-d、毫秒、时区、T分隔、补全世纪、中文前后缀(“公元”、“公元前”)、英文前后缀(“AD”、“BC”)。

2.3.4 定义枚举型

对于枚举型,可定义数值列表。

2.4 对于非法值的处理

  1. 数据列对于非法值的处理策略:略过、计为空值、计为零。

  2. 在一些上下文环境中,“计为空值”等同于“略过”。

  3. 此属性只用于显示或者计算,在编辑输入数值时不会自动处理非法值。

3. 列的应用

列的应用原则为:“最大包容、最少处理”。

3.1 加载数据

加载数据时,不检查列类型,原样读取和导入。

3.2 显示数据

  1. 按列类型解析数值

  2. 按列的定义来处理非法值

  3. 按列的格式来重写数值

  4. 被显示的数值,可能与当前实际数值并不相同。

  5. 例如,列的类型为双精度,读入数值“abc”:

3.3 编辑的控件

  1. 对于布尔类型,显示选择框。

  2. 对于枚举类型,显示下拉选择列表。

  3. 对于颜色类型,显示调色盘。

  4. 对于经度/纬度,可在地图上选择位置。

3.4 编辑数据单元

  1. 点击可编辑的数据单元,开始编辑。

  2. 开始编辑时,数值原样显示,忽略列类型和列格式。

  3. 在输入和修改数值过程中,按列类型检查输入框中的数值。

  1. 按回车键以提交修改,按ESC键以取消修改。

  2. 选项:当焦点离开数据单元(点击其它控件)时,自动提交修改。

  3. 当修改被提交后,检查编辑框中的数值:

  1. 例如,列的类型为双精度,非法值计为空,小数位数为2。读入数值“abc”:

  1. 其它数据单元不受影响。即只要不修改数据单元,它们就一直保持原样。

3.5 检验数据值

  1. 检验的对象是当前页中的数据行。

  2. 开启方式:

  1. 以下内容被检验:

  1. 检验结果被显示为html表格。

3.6 保存数据

  1. CSV/文本/Excel文件的数值都按字符串写入。

  2. 数据库表的数值按“就近类型”写入:

MyBox的列类型

JDBC的数据类型

字串(String)

VARCHAR

双精度(Double)

DOUBLE

浮点(Float)

FLOAT

长整型(Long)

BIGINT

整型(Integer)

INT

短整型(Short)

SMALLINT

布尔型(Boolean)

BOOLEAN

日期时间(Datetime)

TIMESTAMP

日期(Date)

DATE

纪元(Era)

BIGINT

经度(Longitude)

DOUBLE

纬度(Latitude)

DOUBLE

枚举型(Enumeration)

VARCHAR

颜色(Color)

VARCHAR

注: derby不支持负数的时间类型,所以只能用长整型保存纪元。

  1. 矩阵的所有数值都按双精度写入。

3.7 计算数据

  1. 忽略列类型和列格式,用数据原值来处理,

  2. 按计算的要求解析数值。例如计算需要双精度数字,则试图将数值转换为双精度。

  3. 若数值转换失败,则按列的定义处理非法值。

  4. 计算本身也可以定义对非法值的处理策略。计算的定义优先于列的定义。

  5. 列和计算都可以定义小数位数。计算的定义优先于列的定义。

  6. 例如,列类型为字串,对它进行描述性统计:

3.8 数据排序

  1. 所有涉及到排序的计算,数据都会转换为临时数据库表,然后利用数据库系统来排序。

  2. 排序结果与列的类型有关。例如,字串“123”小于字串“18”,而数字“123”大于数字“18”。

3.9 列的颜色

列的颜色主要用于数据图。

当数据图初始生成时,与列相关的图元素显示为列的颜色。其后用户可以设置为随机颜色。

4. 编辑数据

4.1 表格编辑模式

表格是主编辑模式:

    1. 它的修改被自动应用其它面板。

    2. 它是用于保存的最终数据。

    3. 除了文本文件,对于字符串类型的数据,支持编辑和保存多行:

4.2 CSV编辑模式

CSV是辅编辑模式:

    1. 点击按钮“确定”以把它的修改应用于“表格”。

    2. 点击按钮“取消”以丢弃它的修改并从“表格”读取数据。

    3. 点击按钮“分隔符”以从“表格”读取数据并应用新的分隔符,当前修改被丢弃。

    4. 此分隔符不影响源文件。

    5. 若数值包含分隔符或换行符,则数值应被引号包围起来。

4.3 保存与恢复

  1. 修改未保存时,页签头显示* 。

  2. 点击按钮“保存”以把修改写入文件和数据库:

  1. 点击按钮“恢复”以丢弃所有修改并从文件和数据库中加载数据。

5. 管理数据

在内部数据表中记录数据对象的定义:


csv/excel/文本

MyBox粘贴板

矩阵

数据库表

何时增加数据的定义

当数据文件第一次被打开时

当数据复制到MyBox粘贴板中

在矩阵管理器中保存新矩阵时

在数据库表管理器中保存新数据库表时

数据的存储位置

数据文件

MyBox内部目录下的文件

MyBox数据库表

MyBox数据库表

当删除数据的定义

数据文件不受影响

删除内部文件

删除矩阵的数据

删除数据库表


更详细的说明见《用户手册-数据工具》