
上QQ阅读APP看书,第一时间看更新
4-9 向量对象的元素名称
4-9-1 建立简单含元素名称的向量对象
虽然我们可以使用索引很方便地取得向量对象的元素,R语言有一个强大的功能是为向量对象的每一个元素命名,未来我们也可以利用对象的元素名称引用元素内容。下列是建立向量对象,同时给对象元素命名的方法。
object <- c(name1= data1, name2 = data2, …)
实例ch4_81:为Jordon的前三场NBA比赛的得分,建立一个含元素名称的向量对象。在本实例中,除了建立此含元素名称的向量对象baskets.NBA.Jordon外,同时列出各元素名称、元素值和此对象的结构。

4-9-2 names()函数
使用names()函数可以查询向量对象元素的名称,也可更改向量对象元素的名称。
实例ch4_82:查询前一实例所建的元素名称。

names()函数也可以用来修改元素名称。
实例ch4_83:修改对象baskets.NBA.Jordon的元素名称,并验证结果。

如果想要删除向量对象的元素名称,只要将其设为NULL即可,例如下列指令可以将上述实例所建向量对象baskets.NBA.Jordon的元素名称删除。
names(baskets.NBA.Jordon)<- NULL
month.name是系统内建的一个数据集,此向量对象的内容如下所示。

有了以上数据集,我们可以用另一种方式为向量对象建立元素名称。
实例ch4_84:建立一个月份表,这个月份表的元素含当月月份的英文名称和当月天数。

实例ch4_85:列出天数为30天的月份。

4-9-3 使用系统内建的数据集islands
这个数据集含有全球48个岛屿的名称及面积,其内容如下所示。

上述数据集是依照英文首字母排列数据元素的,下列是一系列取此数据集子集的实例。
实例ch4_86:取子集并依岛屿大小从大到小排列。


实例ch4_87:取面积最小的10个岛屿。

如果只想取得岛屿的名称,可参考如下实例。
实例ch4_88:取面积最大的10个岛屿的名称,且只列出名称。

实例ch4_89:以不用head()函数的方式,完成前一个实例。
