You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将R语言中data$Floor列拆分为楼层与总楼层两列

拆分包含"out of"的楼层列成两列

你可以用两种简单的方法实现需求,推荐用tidyr包的separate()函数一步到位:

方法一:tidyr 简洁实现

# 加载tidyverse(包含tidyr)
library(tidyverse)

# 处理你的数据集
data <- data %>%
  separate(Floor, into = c("Floor", "Total Floors"), sep = " out of ", convert = TRUE)
  • sep = " out of " 指定拆分的分隔符
  • convert = TRUE 自动将Total Floors转换为数值类型,方便后续统计分析

方法二:基于你原思路的拓展

如果你想沿用替换分隔符的思路,可以继续用字符串拆分完成:

# 替换"out of"为空格
data$Floor_temp <- str_replace_all(data$Floor, "out of", " ")

# 按空格拆分并转为数据框
split_result <- strsplit(data$Floor_temp, "\\s+") %>%
  do.call(rbind, .) %>%
  as.data.frame(stringsAsFactors = FALSE) %>%
  setNames(c("Floor", "Total Floors"))

# 合并到原数据集并清理临时列
data <- cbind(data, split_result) %>%
  select(-Floor_temp, -Floor) %>% # 移除原Floor列和临时列
  relocate(Floor, `Total Floors`) # 调整列顺序

内容的提问来源于stack exchange,提问作者user19375357

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 12:20:34