小编Sca*_*bee的帖子

如何禁用科学记数法?

我有一个带有一列p值的数据框,我想对这些p值进行选择.

> pvalues_anova
[1] 9.693919e-01 9.781728e-01 9.918415e-01 9.716883e-01 1.667183e-02
[6] 9.952762e-02 5.386854e-01 9.997699e-01 8.714044e-01 7.211856e-01
[11] 9.536330e-01 9.239667e-01 9.645590e-01 9.478572e-01 6.243775e-01
[16] 5.608563e-01 1.371190e-04 9.601970e-01 9.988648e-01 9.698365e-01
[21] 2.795891e-06 1.290176e-01 7.125751e-01 5.193604e-01 4.835312e-04
Run Code Online (Sandbox Code Playgroud)

选择方式:

anovatest<- results[ - which(results$pvalues_anova < 0.8) ,]
Run Code Online (Sandbox Code Playgroud)

如果我在R中使用它,该函数可以正常工作.但是如果我在另一个应用程序(galaxy)中运行它,那些没有e-01例如的数字就不会4.835312e-04被抛出.

有没有另一种方法来表示p值,0.0004835312而不是4.835312e-04

formatting r scientific-notation

276
推荐指数
3
解决办法
24万
查看次数

强制R不使用指数表示法(例如e + 10)?

我可以强制R使用常规数字而不是使用e+10类似符号吗?我有:

1.810032e+09
# and 
4
Run Code Online (Sandbox Code Playgroud)

在同一个向量内,并希望看到:

1810032000
# and
4
Run Code Online (Sandbox Code Playgroud)

我正在为一个老式程序创建输出,我必须使用编写一个文本文件cat.到目前为止工作正常,但我根本无法使用e+10那里的符号.

r scientific-notation options number-formatting defaults

206
推荐指数
4
解决办法
22万
查看次数

提取正则表达式匹配

我正在尝试从字符串中提取数字.

并做一些类似于[0-9]+字符串"aaa12xxx"和得到的东西"12".

我以为它会是这样的:

> grep("[0-9]+", "aaa12xxx", value=TRUE)
[1] "aaa12xxx"
Run Code Online (Sandbox Code Playgroud)

然后我想...

> sub("[0-9]+", "\\1", "aaa12xxx")
[1] "aaaxxx"
Run Code Online (Sandbox Code Playgroud)

但我做了某种形式的回应:

> sub("[0-9]+", "ARGH!", "aaa12xxx")
[1] "aaaARGH!xxx"
Run Code Online (Sandbox Code Playgroud)

我缺少一个小细节.

regex r

97
推荐指数
6
解决办法
8万
查看次数

用于检查字符串中是否连续找到大写字母的正则表达式?

我想知道以下情况的正则表达式:

该字符串应仅包含字母.它必须以大写字母开头,后跟小写字母.然后它可以是小写字母或大写字母.

^[A-Z][a-z][A-Za-z]*$
Run Code Online (Sandbox Code Playgroud)

但字符串也必须不包含任何连续的大写字母.如何将该逻辑添加到正则表达式?

也就是说,HttpHandler是对的,但是HTTPHandler错了.

regex capitalize

63
推荐指数
4
解决办法
17万
查看次数

如何组织大型闪亮应用程序?

组织更大的Shiny应用程序的最佳实践是什么?
我认为最好的R实践也适用于Shiny.
这里讨论最佳R实践:如何组织大型R程序
链接到谷歌的R风格指南:风格指南

但是,我可以采用什么样的Shiny上下文中的独特提示和技巧,使我的Shiny代码看起来更好(更具可读性)?我想的是:

  • 利用Shiny中的面向对象编程
  • server.R这部分应采购?
  • 包含markdown文档,图片,xml和源文件的项目的文件层次结构

例如,如果我正在使用,navbarPage并且tabsetPaneltabPanel添加几个UI元素后,我的每个代码都开始变得非常混乱.

示例代码:

server <- function(input, output) {

 #Here functions and outputs..

}

ui <- shinyUI(navbarPage("My Application",
  tabPanel("Component 1",
             sidebarLayout(
                sidebarPanel(
                    # UI elements..
                ),
                mainPanel(
                    tabsetPanel(
                        tabPanel("Plot", plotOutput("plot")
                                 # More UI elements..
                                 ), 
                        tabPanel("Summary", verbatimTextOutput("summary")
                                 # And some more...
                                 ), 
                        tabPanel("Table", tableOutput("table")
                                 # And...
                                 )
                    )
                )
    )           
  ),
  tabPanel("Component 2"),
  tabPanel("Component 3")
))

shinyApp(ui = ui, server = server)
Run Code Online (Sandbox Code Playgroud)

为了组织ui.R …

r shiny

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

如何安装多个包?

我如何在R中安装多个软件包?

我尝试了以下代码:

install.packages("EIAdata", "gdata", "ggmap", "ggplot2","gridExtra","ISOweek","kobe","lubridate","maps","MASS","memisc","pander","plyr","psych","Quandl","quantmod","reshape2","rgeos","Rgnuplot","RODBC","scales","sp","sqldf","stockPortfolio","stringi","stringr","XLConnect", "xlsReadWrite","zipcode")
Run Code Online (Sandbox Code Playgroud)

此代码有效:

install.packages("ggplot2")
Run Code Online (Sandbox Code Playgroud)

为什么多个包的行不起作用?

packages r

50
推荐指数
3
解决办法
4万
查看次数

为什么不建议在R中使用attach(),我应该使用什么呢?

我们假设我们有一个x包含列job和的数据框income.引用帧中的数据通常需要列中x$job数据的命令job和列x$income中的数据income.

但是,使用该命令attach(x)允许$在引用相同数据时取消数据帧的名称和符号.因此,x$job变得jobx$income成为income在R代码.

问题是R中的许多专家建议在R中attach()编码时不要使用该命令.

主要原因是什么?应该用什么呢?

r dataframe r-faq

43
推荐指数
4
解决办法
2万
查看次数

为什么数字1e9999 ...(31 9s)导致R出现问题?

当进入1e9999999999999999999999999999999R时,R挂起并且不会响应 - 要求它被终止.

它似乎发生在3种不同的计算机上,操作系统(Windows 7和Ubuntu).它发生在RStudio,RGui和RScript中.

以下是一些可以更轻松地生成数字的代码:

boom <- paste(c("1e", rep(9, 31)), collapse="")
eval(parse(text=boom))
Run Code Online (Sandbox Code Playgroud)

现在显然这不是一个实际问题.我没有必要使用这么大的数字.这只是好奇心的问题.

奇怪的是,如果你尝试1e99999999999999999999999999999981e10000000000000000000000000000000(加上或减去一个从幂),你会得到Inf0分别.这个数字显然是某种界限,但是在这里和为什么之间?

我认为它可能是:

  • 一个浮点问题,但我认为它们最终在1.7977e308,早在有问题的数字之前.
  • 32位整数的问题,但是2 ^ 32是4294967296,远小于有问题的数字.
  • 真的很奇怪.这是我的主导理论.

编辑:最迟在2015-09-15,这不再导致R挂起.他们必须修补它.

r

37
推荐指数
2
解决办法
1068
查看次数

在 VS code Jupyter Notebook 中创建目录

我正在使用Visual Studio Code 中的 Jupyter 扩展来维护有关 python 编程的笔记本,并且我想在其中添加一个目录。我想添加目录,因为笔记本变得非常大并且变得难以导航。

我使用#在 Markdown 文件中编写标题以正确构建它们。我还了解了如何通过使用超链接和内置功能在 Jupyter Notebook 上执行此操作。

VS 中使用 Jupyter 扩展时该功能不可用吗?

问题的屏幕截图

python tableofcontents jupyter visual-studio-code jupyter-notebook

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

简化了R中的dput()

我想念一种以透明的方式将数据添加到SO答案的方法.我的经验是,该structure对象dput()有时会使没有经验的用户感到不必要.但是我没有耐心每次都将它复制/粘贴到一个简单的数据框中,并希望自动化它.类似的东西dput(),但是在简化版中.

说我通过复制/粘贴和其他一些hos有这样的数据,

Df <- data.frame(A = c(2, 2, 2, 6, 7, 8),
                 B = c("A", "G", "N", NA, "L", "L"),
                 C = c(1L, 3L, 5L, NA, NA, NA))
Run Code Online (Sandbox Code Playgroud)

看起来像这样,

Df
#>   A    B  C
#> 1 2    A  1
#> 2 2    G  3
#> 3 2    N  5
#> 4 6 <NA> NA
#> 5 7    L NA
#> 6 8    L NA
Run Code Online (Sandbox Code Playgroud)

在一个整数内,一个因子和一个数字向量,

str(Df)
#> 'data.frame':    6 obs. of  3 variables:
#> …
Run Code Online (Sandbox Code Playgroud)

formatting r

24
推荐指数
4
解决办法
1912
查看次数