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

在R及RStudio中基于已有数据创建数据框的方法(含选列示例)

1. 利用已有数据创建R语言数据框

下面是几种常用的创建方式:

  • 从多个向量创建
    如果有若干长度相同的向量,直接用data.frame()函数打包即可:
# 示例向量
name <- c("Alice", "Bob", "Charlie")
age <- c(25, 30, 35)
score <- c(85, 90, 78)

# 创建数据框
df <- data.frame(Name = name, Age = age, Score = score)

注:R版本≥4.0时,字符向量默认保留原类型;旧版本需添加stringsAsFactors = FALSE参数避免转成因子。

  • 从列表创建
    若已有元素长度一致的列表,直接转换为数据框:
data_list <- list(
  Name = c("Alice", "Bob", "Charlie"),
  Age = c(25, 30, 35),
  Score = c(85, 90, 78)
)

df <- as.data.frame(data_list)
  • 从矩阵转换
    矩阵数据可通过as.data.frame()转为数据框:
data_matrix <- matrix(c("Alice",25,85,"Bob",30,90,"Charlie",35,78), nrow=3, byrow=TRUE)
colnames(data_matrix) <- c("Name", "Age", "Score")

df <- as.data.frame(data_matrix, stringsAsFactors = FALSE)
2. 从数据集data1中选取6列创建新数据框df1

在RStudio中直接运行以下代码即可,提供几种常用选取方式:

  • 按列名选取
    已知目标列名称时,用方括号或dplyr包的select()函数:
# 假设目标列名为col1至col6
df1 <- data1[, c("col1", "col2", "col3", "col4", "col5", "col6")]

# 用dplyr包的写法(需先安装加载)
library(dplyr)
df1 <- data1 %>% select(col1, col2, col3, col4, col5, col6)
  • 按列索引选取
    知道目标列在data1中的位置时,直接指定索引:
# 选取第2到第7列(共6列)
df1 <- data1[, 2:7]

# 或指定离散索引,比如第1、3、5、7、9、11列
df1 <- data1[, c(1,3,5,7,9,11)]
  • 反向选取(排除不需要的列)
    若仅需排除少数列,用负号标记排除项:
# 假设要排除第7、8列,剩余为6列(需data1总列数为8)
df1 <- data1[, -c(7,8)]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 19:30:55