R语言数据结构5:dataframe数据框的创建

R语言数据结构5:dataframe

由于不同的列可以包含不同模式(数值型、字符型等)的数据,数据框的概念较矩阵来说更为一般。数据框是R中最常处理的数据结构。

1.创建数据框

1.1 基础创建方法:使用data.frame()

data.frame(..., row.names = NULL, check.rows = FALSE,
           check.names = TRUE, fix.empty.names = TRUE,
           stringsAsFactors = FALSE)
  • ... 输入列向量:可以是向量、列表、矩阵或其他数据框。所有列必须长度相同(或可循环扩展至相同长度)。
  • row.names:NULL或单个整数或字符字符串,指定行名的向量或列名。
  • check.rows:如果 TRUE,则检查行在长度和名称上的一致性。通常无需启用(保持默认 FALSE)。
  • check.names :逻辑值。如果 TRUE,则检查数据框中变量的名称,以确保它们是语法有效的变量名称且不重复
  • fix.empty.names:逻辑值,是否自动命名未命名的列。默认 TRUE:无名列命名为 Var1, Var2 等。
  • stringsAsFactors:逻辑值:是否将字符向量转换为因子。若为 TRUE,字符向量自动转换为因子(Factor)
# 创建等长向量
id <- 1:5
name <- c("张三", "李四", "王五", "赵六", "钱七")
age <- c(28, 32, 25, 41, 36)
salary <- c(8500, 12000, 6800, 15000, 11000)
hired <- as.Date(c("2020-01-15", "2018-03-22", "2022-05-30", "2015-11-10", "2019-07-15"))
# 创建数据框
df <- data.frame(
  员工ID = id,
  姓名 = name,
  年龄 = age,
  薪资 = salary,
  入职日期 = hired
)
df

1.2 tibble()

tibble(
  ...,                      # 列数据(名称 = 值)
  .rows = NULL,             # 预分配行数(可选)
  .name_repair = "check_unique"  # 列名处理规则
)
tibble_row(
  ...,                      # 列数据(名称 = 值)
  .name_repair = "check_unique"  # 列名处理规则
)

1.3. tibble vs data.frame 关键区别

特性tibbledata.frame
字符串转因子永不自动转换默认转换(需设 stringsAsFactors=FALSE
列名修正保留原样(可选修复)默认自动修正(check.names=TRUE
打印输出简洁(显示类型)全部输出(可能卡顿)
部分匹配禁止(df$col 必须全名)允许(df$co 可能匹配 df$col
循环补齐警告(除非长度为1)静默补齐
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值