小编Rui*_*das的帖子

如何执行引导程序并找到数据集中位数的 95% 置信区间

我正在使用数据集“文件”的统计中位数执行引导程序,仅包含一列“总计”。就是这个:

Total <-
c(2089, 1567, 1336, 1616, 1590, 1649, 1341, 1614, 1590, 1621, 
1621, 1631, 1295, 107, 18, 195, 2059, 870, 2371, 787, 98, 2422, 
655, 1277, 1336, 2109, 1811, 1337, 1290, 1308, 1359, 1600, 1296, 
693, 107, 1359, 89, 89, 89, 89, 2411, 1639, 89, 89, 1283, 89, 
89, 89, 2341, 1012, 1295, 1853, 1277, 1571, 1288, 1300, 1619, 
107, 555, 1612, 1300, 1300, 2093, 133, 1674, 988, 132, 647, 606, 
544, 873, 274, 120, 1620, 1601, 1601, 906, …
Run Code Online (Sandbox Code Playgroud)

r confidence-interval

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

ks.test 和ties 的问题

我有一个发行版,例如:

d 
#[1]  4 22 15  5  9  5 11 15 21 14 14 23  6  9 17  2  7 10  4
Run Code Online (Sandbox Code Playgroud)

或者,格式ddput向量。

d <- c(4, 22, 15, 5, 9, 5, 11, 15, 21, 14, 14, 23, 6, 9, 17, 2, 7, 10, 4)
Run Code Online (Sandbox Code Playgroud)

当我应用 ks.test 时:

gamma <- ks.test(d, "pgamma", shape = 3.178882, scale = 3.526563) 
Run Code Online (Sandbox Code Playgroud)

这会给出以下警告:

警告消息:在 ks.test(d, "pgamma", shape = 3.178882, scale = 3.526563) 中:Kolmogorov-Smirnov 测试中不应存在关系

我尝试了 put unique(d),但显然我的数据减少了值,我不希望发生这种情况。
和网上其他的方式和例子一样,这个例子也发生了,但不同的是测试显示一些带有警告消息的结果,而不仅仅是没有值的消息ks.test。 …

warnings r kolmogorov-smirnov

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

ggrepel:结合使用 position_dodge 和 geom_label_repel

我试图在geom_boxplotusing 中标记异常值ggrepel::geom_label_repel。当只有一个分组变量时它工作得很好,但是当我尝试将它用于多个分组变量时,我遇到了问题。由于某种原因,ggrepel 中的 position 参数似乎不太一致,请参见此示例:

library(tidyverse)
library(ggrepel)

set.seed(1337)

df <- tibble(x = rnorm(500),
             g1 = factor(sample(c('A','B'), 500, replace = TRUE)),
             g2 = factor(sample(c('A','B'), 500, replace = TRUE)),
             rownames = 1:500)

is_outlier <- function(x) {
    return(x < quantile(x, 0.25) - 1.5 * IQR(x) | x > quantile(x, 0.75) + 1.5 * IQR(x))
}

df_outliers <- df %>% group_by(g1, g2) %>% mutate(outlier=is_outlier(x))

ggplot(df_outliers, aes(x=g1, y=x, fill=g2)) + 
    geom_boxplot(width=0.3, position = position_dodge(0.5)) +
    ggrepel::geom_label_repel(data=. %>% filter(outlier), 
                              aes(label=rownames), position = …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 ggrepel

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

R列表 - 组合具有相同名称的元素

我在 R 中有一个列表:

A = list(c(1,4), 2, 3, c(1,4))

names(A) <- c("name 1", "name 2", "name 2", "name 3")

$`name 1`
[1] 1 4

$`name 2`
[1] 2

$`name 2`
[1] 3

$`name 3`
[1] 1 4
Run Code Online (Sandbox Code Playgroud)

我想组合具有相同名称的列表元素。输出看起来像这样

$`name 1`
[1] 1 4

$`name 2`
[1] 2 3

$`name 3`
[1] 1 4
Run Code Online (Sandbox Code Playgroud)

我将如何实现这一目标?

r list

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

如何在 R 中为给定函数绘制图表

假设有这个函数sqrt(x^2)+0.9*sqrt(3.3-x^2)*sin(30*pi*x)这个函数生成一个形状的图heart

在此输入图像描述

有没有办法使用 ggplot2 重现此函数来获得红色heart作为输出?感谢您的帮助。

r ggplot2

5
推荐指数
3
解决办法
609
查看次数

R 如何转换用逗号分隔的字符串与数据框

例如:

string<-("15050505:20220513,19090909:20220515,19080808:20220513,20010101:20220515,23020202:20220515,23020402:20220515")
Run Code Online (Sandbox Code Playgroud)

我想将其转换为具有两列的数据框,如下所示: 在此输入图像描述

r dataframe

5
推荐指数
3
解决办法
415
查看次数

如何避免R自动将日期转换为数字?

如何避免R在for循环中将日期转换为数字?这与此问题有关,该问题显示了 mapply禁用 mapply 自动将日期转换为数字的相同行为

date <- c('2008-02-20','2009-10-05')
date <- as.Date(date, format = '%Y-%m-%d')
date
[1] "2008-02-20" "2009-10-05"
for (i in date) print(i)
[1] 13929
[1] 14522
Run Code Online (Sandbox Code Playgroud)

禁用 mapply 自动将日期转换为数字

编辑

我重新打开了这个问题,因为重复循环在日期时间对象上导致数字迭代器询问为什么R 循环将日期和日期时间对象转换为数字,这个问题询问如何避免这种行为。答案是解决问题的关键,与副本中的已接受答案和其他答案不同,它们正确地回答了其他问题。

r

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

如何按R中的降序按列对数据进行排序

我看了看,答案要么对我不起作用,要么太复杂和不必要了.

我有数据,它可以是任何数据,这里是一个例子

chickens <- read.table(textConnection("
feathers beaks
2   3
6   4
1   5
2   4
4   5
10  11                               
9   8
12  11
7   9
1   4
5   9
"), header = TRUE)
Run Code Online (Sandbox Code Playgroud)

我需要非常简单地按降序对第1列的数据进行排序.这很简单,但我发现下面有两件事情都不起作用,并给我一个错误,上面写着:

"顺序错误(var):找不到对象'var'.

他们是:

chickens <- chickens[order(-feathers),]
Run Code Online (Sandbox Code Playgroud)

chickens <- chickens[sort(-feathers),]
Run Code Online (Sandbox Code Playgroud)

我不确定我在做什么,如果我把df名字放在前面,我可以让它工作varname,但是如果我在前面加一个减号varname来暗示降序,那就行不通了.

我想尽可能简单地做到这一点,即没有布尔逻辑变量,没有这样的.一个类似于SPSS

SORT BY varname (D)

答案可能就在我面前,我为基本问题道歉.

谢谢!

r

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

使用数据框作为对应表

我有一个看起来像这样的数据库:

> database
     [,1] [,2] [,3] [,4]
[1,]    1    2    1    1
[2,]    2    2    3    4
[3,]    4    4    4    1
Run Code Online (Sandbox Code Playgroud)

和对应表,这是一个数据帧:

> corresp
  number  name
1      1 name1
2      2 name2
3      3 name3
4      4 name4
Run Code Online (Sandbox Code Playgroud)

如何在不使用循环的情况下用数据库中的相应名称替换数字?

(用于复制:)

database <- rbind(c(1, 2, 1, 1), 
                  c(2, 2, 3, 4),
                  c(4, 4, 4, 1))
corresp <- data.frame(number = c(1, 2, 3, 4),
                      name = c("name1","name2","name3","name4"))
Run Code Online (Sandbox Code Playgroud)

r dataframe

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

从整个句子中删除多余的空格

我有下面的变量

sen <- "I have a    sentence  "
Run Code Online (Sandbox Code Playgroud)

我只想从上面的句子中删除空格(所有空格,开头,结尾和中间的空格),我知道如何使用str_trim(sen),但这只删除开头和结尾的空格。我也想摆脱中间的空格

必填输出“我有一个句子”

string r trim stringr

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