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

在R中按条件删除实验数据行:RT与错误率计算脚本求助

R语言实验数据清理脚本(匹配指定规则)

先加载并准备实验数据

把你提供的实验数据转换成R可处理的数据框:

# 创建示例数据集
exp_data <- data.frame(
  trial_no = c(1,2,3,4,5,6,7,8,9,10,11,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40),
  correct = c(1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,1,0,0,1,1,1,1,1,0,1)
)

步骤1:删除第一条试次

直接通过行索引删除第一行:

# 删除第一条试次
data_step1 <- exp_data[-1, ]
# 重置行号(可选,方便后续处理)
rownames(data_step1) <- NULL

处理用于计算RT的数据集(规则2)

规则要求:删除所有错误试次(correct=0)以及该错误试次的下一条试次

# 找出所有错误试次的行号
error_rows <- which(data_step1$correct == 0)
# 要删除的行:错误行 + 错误行的下一行
rows_to_remove_rt <- unique(c(error_rows, error_rows + 1))
# 排除超出数据集行数的索引(比如最后一行是错误试次时,error_rows+1会越界)
rows_to_remove_rt <- rows_to_remove_rt[rows_to_remove_rt <= nrow(data_step1)]

# 生成用于计算RT的清理后数据集
data_for_rt <- data_step1[-rows_to_remove_rt, ]

处理用于计算错误率的数据集(规则3)

规则要求:

  • 删除错误试次的下一条试次
  • 连续错误时,仅保留第一个错误试次,其余连续错误排除
# 1. 标记错误试次的下一行
next_error_rows <- which(data_step1$correct == 0) + 1
next_error_rows <- next_error_rows[next_error_rows <= nrow(data_step1)]

# 2. 处理连续错误:找出连续错误中除第一个之外的错误行
# 使用rle函数识别连续的correct值序列
rle_correct <- rle(data_step1$correct)
# 找出连续0且长度>1的序列的位置
long_error_runs <- which(rle_correct$values == 0 & rle_correct$lengths > 1)

# 计算这些连续错误序列中需要删除的行号
extra_error_rows <- c()
start_pos <- 1
for (i in seq_along(rle_correct$lengths)) {
  if (i %in% long_error_runs) {
    # 该序列中除第一个位置外的所有行都要删除
    end_pos <- start_pos + rle_correct$lengths[i] - 1
    extra_error_rows <- c(extra_error_rows, (start_pos + 1):end_pos)
  }
  start_pos <- start_pos + rle_correct$lengths[i]
}

# 合并所有要删除的行(去重)
rows_to_remove_error <- unique(c(next_error_rows, extra_error_rows))

# 生成用于计算错误率的清理后数据集
data_for_error_rate <- data_step1[-rows_to_remove_error, ]

验证结果

可以通过打印数据集查看清理效果:

# 查看RT用数据集
print(data_for_rt)
# 查看错误率用数据集
print(data_for_error_rate)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 04:09:28