小编use*_*055的帖子

使用上一个行值填充数据框

我有一个有2列的数据框.

column1在column2中的随机数是一个地方保持列,我希望column3看起来像

  random    temp
0.502423373 1
0.687594055 0
0.741883739 0
0.445364032 0
0.50626137  0.5
0.516364981 0
...
Run Code Online (Sandbox Code Playgroud)

我想填充column3所以它取最后一个非零数字(在这个例子中是1或.5)并连续用该值填充以下行,直到它遇到一个具有不同数字的行.然后它重复整个列的过程.

random     temp state
0.502423373 1   1
0.687594055 0   1
0.741883739 0   1
0.445364032 0   1
0.50626137  0.5 0.5
0.516364981 0   0.5
0.807804708 0   0.5
0.247948445 0   0.5
0.46573337  0   0.5
0.103705154 0   0.5
0.079625868 1   1
0.938928944 0   1
0.677713019 0   1
0.112231619 0   1
0.165907178 0   1
0.836195267 0   1
0.387712998 1   1
0.147737077 0   1
0.439281543 0.5 0.5
0.089013503 0 …
Run Code Online (Sandbox Code Playgroud)

r calculated-columns dataframe

9
推荐指数
2
解决办法
5962
查看次数

基于 R 中标准偏差的子集

我有一个数据框,它由每个观察的变量列组成,这些列是行。我需要修剪这些数据以删除不需要的观察结果。

我通常如何做到这一点 -

trimmed_stats <- ddply(.data = data, .(pos), subset,
                       !AvgGFP > 100 &
                       !AvgRFP > 60 &
                       !Area < 220 &
                       !Area > 2000 &
                       !DeviationsRFP > 20 &
                       !DeviationGFP > 20)
Run Code Online (Sandbox Code Playgroud)

...基本上删除不符合特定标准的数据。

但是,当我查看多个数据集时,这些特定数字会因数据集而异。

我想要做的是使用与平均值的标准偏差执行“修剪”。

例如,让我们采用一个简单的数据框,每个观察值都有一个变量 -

p <- data.frame(obs = c(1:1000), var1 = rnorm(1000, 0 , 5))
sd(p[,2])
[1] 4.91213
Run Code Online (Sandbox Code Playgroud)

所以 1 个标准差是 4.91213,如何删除 var1 不在均值 1 个标准差范围内的所有行?

r trim dataframe

1
推荐指数
1
解决办法
4217
查看次数

标签 统计

dataframe ×2

r ×2

calculated-columns ×1

trim ×1