为每个度量减去特定条件

编程入门 行业动态 更新时间:2024-10-27 20:37:28
本文介绍了为每个度量减去特定条件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个如下所示的数据框,它一直持续到主题 22Beta 是依赖度量.

I have a data frame which looks like following and it continues up to subject 22 Beta is the dependent measure.

Subject ROI Block Condition Beta 1 motor1 1 nopred_noom -2.8653 1 motor1 1 pred_noom -2.9126 1 motor1 1 nopred_om -2.8688 1 motor1 1 pred_om -2.9098 1 motor1 1 null -2.7717 1 motor1 2 nopred_noom -2.2382 1 motor1 2 pred_noom -2.0583 1 motor1 2 nopred_om -2.2207 1 motor1 2 pred_om -2.1928 1 motor1 2 null -2.1166 1 motor1 3 nopred_noom -1.5992 1 motor1 3 pred_noom -1.5493 1 motor1 3 nopred_om -1.5230 1 motor1 3 pred_om -1.4851 1 motor1 3 null -1.5624 2 motor1 1 nopred_noom -1.1354 2 motor1 1 pred_noom -1.1614 2 motor1 1 nopred_om -1.2779 2 motor1 1 pred_om -1.1234 2 motor1 1 null -1.2203 2 motor1 2 nopred_noom -1.5728 2 motor1 2 pred_noom -1.6614 2 motor1 2 nopred_om -1.7076 2 motor1 2 pred_om -1.7702 2 motor1 2 null -1.4170

有 5 个条件,但我想使用条件 null 作为基线,并希望从每个相应块和主题中的其他条件中减去它.

There are 5 conditions, but I want to use the condition null as the baseline and want to subtract it from other conditions in each corresponding block and subject.

所以我会从主题 1 块 1 中其他条件的 Beta 度量中减去主题 1 块 1 中的 Beta 值,块 1 但然后我想使用主题 1 块 2 中的 beta 值null"作为主题 1 中的度量、block2 等等.

so I would subtract Beta in subject 1, block 1, condition "null" from Beta measures in other conditions in subject1, block 1 but then I want to use beta value "null" from subject1, block2 for measures in subject 1, block2 and so on.

每 5 个条件出现一次空条件,我怀疑我需要使用循环,但我对 R 很陌生,我不知道如何做到这一点.

null condition occurs every 5 conditions and i suspect I need to use a loop but I am quite new to R and I am not sure how to do this.

感谢任何帮助!!!谢谢:)

any help is appreciated!!! thanks :)

推荐答案

以下是上述任务的基本 R 代码:

Here is base R code for the above task:

#-- split dfs <- split(df, list(df$Block, df$Subject)) #-- apply Beta0<-NULL for (i in 1:length(dfs)) {Beta0 <- dfs[[i]]$Beta - dfs[[i]][dfs[[i]]$Condition=="null",]$Beta; dfs[[i]][,"Beta0"] <- Beta0} #-- recombine dfrc <- do.call(rbind, dfs)

df=原始数据框;dfs = 包含所有拆分子组的列表;dfrc = 新数据框,应重现上面为新列Beta0"显示的结果.

df= original data frame; dfs = a list comprising all the split subgroups; dfrc = new data frame that should reproduce the results displayed above for the new column "Beta0".

我发布这个是因为我有一个类似的数据集,其中一个块中条件null"的缺失值Beta".Plyr 产生了一条错误消息参数意味着不同的行数:x, 0"并且没有计算.然而,上面的代码为该块生成了 NA,但计算了所有其余的.

I posted this because I had a similar data set with - analagously - a missing value of "Beta" for the condition "null" in one block. Plyr produced an error message "arguments imply differing number of rows: x, 0" and di dnot compute. The above code, however, produced NAs for that block but computed all the rest.

更多推荐

为每个度量减去特定条件

本文发布于:2023-07-09 15:03:57,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1087168.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:度量   条件

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!