小编Mat*_*ers的帖子

在r中创建备用系列

我有一个名单-0.5,-0.6,0.7,1,1.5,3,-5,我想将它作为排序3,-5,1.5,-0.6,1,-0.5,0.7.换句话说,我想将列表分为正面和负面列表,然后将它们从最大到最小排序,但是交替排序.

我怎样才能做到这一点?

sorting r

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

数百万个间隔的“dplyr:: Between”:如何使其更快

我有一个包含startValue(在 列X1)和endValue(在 列X2)的数据框,以及异常值列表。我需要计算有多少异常值属于这些特定的startValueendValue。这是一个最小的例子和我的尝试:

library("dplyr")

set.seed(2022)

dat = data.frame(matrix(sort(sample(1:500, 50)), ncol = 2, byrow = T))
dim(dat)
dat$Outliers = NA

outliers = sort(sample(1:500, 30))

for (i in 1:25){
  dat$Outliers[i] = length(which(between(outliers, dat$X1[i], dat$X2[i]) == T))
}
Run Code Online (Sandbox Code Playgroud)

这段代码工作正常。但我的真实数据有数百万行,这个for循环需要很多时间。有没有更快的方法来解决这个问题?

performance for-loop r between dataframe

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

如何从r中的ggplot中提取密度值

如何提取每个密度图的值矩阵?

例如,我感兴趣的是,当重量= 71时,橙子、苹果、梨、香蕉的密度是多少?

下面是最小的例子:

library(ggplot2)
set.seed(1234)
df = data.frame(
  fruits = factor(rep(c("Orange", "Apple", "Pears", "Banana"), each = 200)),
  weight = round(c(rnorm(200, mean = 55, sd=5),
                 rnorm(200, mean=65, sd=5),
                 rnorm(200, mean=70, sd=5),
                 rnorm(200, mean=75, sd=5)))
)
dim(df) [1] 800   2

ggplot(df, aes(x = weight)) +
  geom_density() + 
  facet_grid(fruits ~ ., scales = "free", space = "free")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

r ggplot2 probability-density

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