
上QQ阅读APP看书,第一时间看更新
1.3.3 数组
数组结构类似矩阵,但其为二维以上的数据对象,与向量、矩阵对象一样,每个元素的数据类型必须相同。套件{datasets}中有一个数组对象Titanic,它是关于泰坦尼克号船难的乘客统计数据。Titanic数据集是四维列联表(contingency table),其中各维的因子水平数分别是4、2、2及2(参见1.3.6节因子)。R默认会呈现最后两维(Age与Survived)的四种组合状况下,前面两维(Class与Sex)的二维频率分布(frequency distribution)表(频率也可称为频次),或称列联表。class()函数返回的类别名称table意指array,又因为各维因子水平数(经常)不一,故使用列表组织其各维度的名称向量。ftable()可呈现报刊杂志上常见的扁平式高维列联表,此函数将上述默认的呈现方式转换为前三个因子共16(4×2×2)行,列为最后一个因子的两个水平之扁平式四维列联表。读者可细心观察,两者仅是摆放方式不同,数值内容其实完全一致。



· 数组创建函数是array(),语法如下:
myarray<-array(向量对象,dim=各维因子水平数所形成的数值向量,dimnames=各维因子水平名称的字符串向量所形成的列表)
