由于不同的列包含不同模式(数值型、字符型)的数据,数据框的概念较矩阵来说更为一般。
数据框可通过函数data.frame创建:
mydata <- data.frame(col1, col2, col3, ....)
其中列向量col1, col2, col3等可为任何类型(如字符型、数值型或逻辑型)。每一列的名称可由函数names指定。
创建一个数据框
每一列数据的模式必须唯一,不过可以将多个模式的不同列放在一起组成数据框。
上述中 $ 被用来选取一个给定数据框中的某个特定变量,若生成类型变量diatebes和病情变量status的列联表,即可使用以下代码:
在每个变量名前都键入一次patientdata $ 可能会让人生厌,可以联合使用函数attach()和detach()或单独使用函数with()来简化代码
attach()、detach()、with()
函数attach()课讲数据框添加到R的搜索路径中。R在遇到一个变量名之后,将检查搜索路径中的数据框
为实现上述目标,亦可写成
函数detach()将数据框从搜索路径中移除。detach()并不会对数据框本身做任何处理。
上述出现的错误,由于在数据框mtcar被绑定(attach)之前,环境中已经出现了一个名为mpg的对象。在这种情况下,原始对象将取得优先级,因此与想要的结果有出入。
函数attach()和detach()最好分析一个单独的数据框,并且不太可能有多个同名对象时使用,除此之外,还可使用函数with()
还生成上述两张图形
在这种情况下,花括号{}之间的语句都针对数据框mtcars执行,这样就无需担心名称冲突。
如果需要创建with()结构以外存在的对象,使用特殊赋值符<<-替代标准赋值符(<-)他可将对象保存到with()之外的全局环境中。
实例标识符
为区分数据集中的不同的个体,在R中,实际标识符(case identifier)可通过数据框操作函数中的row.name选项指定
网友评论