小编Jos*_*ich的帖子

从字符串加载R包

我想创建一个函数,包括加载我在函数中创建的包.一个简短的例子(不运行!):

loadMe <- function(name){
    genLib(xxx, libName = name) #make a new library with name "name"
    library(name)               #load the new library...
}
Run Code Online (Sandbox Code Playgroud)

这不起作用!一些可重现的代码说明了我的主要问题:

library(ggplot)         #this works fine
load.this <- "ggplot"
library(load.this)      #I want this to load ggplot!
Run Code Online (Sandbox Code Playgroud)

我知道问题在于,library()并将require()一个尚不存在的对象名称作为参数.我已经试过包装我的字符串,parse(),deparse(),substitute(),expression(),quote(),等等等等,这些都返回了同样的问题:

library(load.this)
# Error in library(loadss) : there is no package called 'loadss'
library(deparse(load.this))
# Error in library(deparse(loadss)) : 'package' must be of length 1
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?

string r character

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

将多个CSV文件读入单独的数据框

假设我们在目录C:\ R\Data中有文件file1.csv,file2.csv,...和file100.csv,我们希望将它们全部读入单独的数据框(例如file1,file2,...和file100).

这样做的原因是,尽管具有相似的名称,但它们具有不同的文件结构,因此将它们放在列表中并不是很有用.

我可以使用lapply但返回包含100个数据帧的单个列表.相反,我想在全球环境中使用这些数据框.

如何直接将多个文件读入全局环境?或者,或者,如何将数据框列表的内容解压缩到其中?

csv r file lapply

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

如何将R对象的结构打印到控制台

打印R对象结构的命令是什么,因此可以通过运行打印输出重新创建对象?

输出通常包含structure函数,您可以将输出复制并粘贴到代码中,以便轻松创建可重现示例的对象.

我整个上午都在打破这个我应该知道的命令.

r

26
推荐指数
2
解决办法
9881
查看次数

预测时间序列数据

我做了一些研究,我一直在寻找解决方案.我有一个时间序列数据,非常基本的数据框,让我们称之为x:

Date        Used
11/1/2011   587
11/2/2011   578
11/3/2011   600
11/4/2011   599
11/5/2011   678
11/6/2011   555
11/7/2011   650
11/8/2011   700
11/9/2011   600
11/10/2011  550
11/11/2011  600
11/12/2011  610
11/13/2011  590
11/14/2011  595
11/15/2011  601
11/16/2011  700
11/17/2011  650
11/18/2011  620
11/19/2011  645
11/20/2011  650
11/21/2011  639
11/22/2011  620
11/23/2011  600
11/24/2011  550
11/25/2011  600
11/26/2011  610
11/27/2011  590
11/28/2011  595
11/29/2011  601
11/30/2011  700
12/1/2011   650
12/2/2011   620
12/3/2011   645
12/4/2011   650
12/5/2011   639
12/6/2011   620
12/7/2011   600
12/8/2011 …
Run Code Online (Sandbox Code Playgroud)

r time-series xts

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

如何在NUM中将NUM转换为INT?

我试图将数字格式转换为R中的整数.这对于我使用Java代码运行某些模拟(将此特定数据读取为int)的项目的一部分是必不可少的.

我想这两个round(x$var, 0)trunc(x$var).他们都成功运行,但是当我str(x),x$var依然是num.x是一个数据帧.

int r type-conversion

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

访问zoo或xts索引

我正在使用zoo对象,买我的问题也适用于xts对象.它看起来像是一个带有索引的单列向量.在我的例子中,索引是日期的向量,而一列向量是我的数据.一切都很好,除了我想访问日期(从索引).

例如,我有以下结果:

ObjZoo <- structure(c(10, 20), .Dim = c(2L, 1L), index = c(14788, 14789),
                    class = "zoo", .Dimnames = list(NULL, "Data"))
unclass(ObjZoo)
#      Data
# [1,]   10
# [2,]   20
# attr(,"index")
# [1] 14788 14789
Run Code Online (Sandbox Code Playgroud)

我想进入14789变量或向量,但我不知道如何访问它.

r zoo xts

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

使用data.table标记组中的第一个(或最后一个)记录

给定sortkey,是否有一个data.table快捷方式来复制SAS和SPSS中的功能firstlast功能?

下面的行人方法标记了组的第一个记录.

鉴于data.table(我正逐渐熟悉)的优雅,我假设有一个使用自联接的快捷方式mult,但我仍然试图弄明白.

这是一个例子:

require(data.table)

set.seed(123)
n <- 17
DT <- data.table(x=sample(letters[1:3],n,replace=T),
                 y=sample(LETTERS[1:3],n,replace=T))
sortkey  <- c("x","y")
setkeyv(DT,sortkey)
key <- paste(DT$x,DT$y,sep="-")
nw <- c( T , key[2:n]!=key[1:(n-1)] )
DT$first <- 1*nw
DT
Run Code Online (Sandbox Code Playgroud)

r data.table

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

更快地找到向量中的第一个TRUE值

在一个函数中,我经常需要使用如下代码:

which(x==1)[1]
which(x>1)[1]
x[x>10][1]
Run Code Online (Sandbox Code Playgroud)

哪里x是数字向量.summaryRprof()表明我花了80%以上的时间在关系运营商身上.我想知道是否有一个函数只进行比较,直到TRUE达到第一个值来加速我的代码.For循环比上面提供的选项慢.

performance r

21
推荐指数
2
解决办法
5171
查看次数

将移动平均线图添加到R中的时间序列图

我在ggplot2包中有一个时间序列图,我已经执行了移动平均线,我想将移动平均值的结果添加到时间序列图中.

数据集样本(p31):

ambtemp dt -1.14
2007-09-29 00:01:57
-1.12 2007-09-29 00:03:57 -1.33
2007-09-29 00:05:57
-1.44 2007-09-29 00:07:57
-1.54 2007-09-29 00:09:57
-1.29 2007-09-29 00:11:57

时间序列演示的应用代码:

  Require(ggplot2)
  library(scales)
  p29$dt=strptime(p31$dt, "%Y-%m-%d %H:%M:%S")
  ggplot(p29, aes(dt, ambtemp)) + geom_line() +
     scale_x_datetime(breaks = date_breaks("2 hour"),labels=date_format("%H:%M")) + xlab("Time 00.00 ~ 24:00 (2007-09-29)") + ylab("Tempreture")+
     opts(title = ("Node 29"))
Run Code Online (Sandbox Code Playgroud)

时间序列演示的样本 时间序列演示的样本

移动平均线图样本 在此输入图像描述 预期结果的样本

挑战在于时间序列数据ov =从数据集中获得,其中包括时间戳和温度,但移动平均数据仅包括平均列而不是时间戳,并且拟合这两者可能导致不一致.

预期成绩

r add time-series moving-average ggplot2

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

是否可以在Android中拥有多个字符串资源文件?

我有我的主要字符串资源文件的android,它是相当充分的(看不到尽头).所以,我希望做一些房子清理并将一些字符串移动到他们自己的资源文件中.这可能吗?

我知道,你也可以拥有像string-enstring-de,但是它可能也许有一个资源文件如string-errors

xml string resources android

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