有没有办法输出例如2个对象而不使用list()?
my.fun=function(vector, index)
{
a=fun.a(vector, index)
b=fun.b(vector, index)
output=list(a,b)
}
Run Code Online (Sandbox Code Playgroud)
或输出2个对象列表?考虑到我也可以:
c=fun.a(vector, index)
d=fun.b(vector, index)
Run Code Online (Sandbox Code Playgroud)
并希望list(a,b)和另一个list(c,d)相同的功能.
这只是我正在寻找的一个小例子,我的函数应用于大对象,我将它们作为列表导出,但是我想导出一个中间计算.一种选择是在同一列表中合并所有,但我想知道是否有另一种解决方案.
我对闰年有些怀疑,我怎么能确定使用这样的公式
add.years= function(x,y){
if(!isTRUE(all.equal(y,round(y)))) stop("Argument \"y\" must be an integer.\n")
x <- as.POSIXlt(x)
x$year <- x$year+y
as.Date(x)
}
Run Code Online (Sandbox Code Playgroud)
它会考虑闰年,例如在观察数据集中添加100年?我该怎么控制呢?
我有一个时间序列数据集,有50年的观察:
date obs
1995-01-01 1.0
1995-01-02 2.0
1995-01-03 2.5
...
2045-12-30 0.2
2045-12-31 0.1
Run Code Online (Sandbox Code Playgroud)
数据集+ 100年
date obs
2095-01-01 1.0
2095-01-02 2.0
2095-01-03 2.5
...
2145-12-30 0.2
2145-12-31 0.1
Run Code Online (Sandbox Code Playgroud)
经过基本检查后,我注意到原始数据集和数据集后100年的行数相同.我不确定闰年之前的第29届Februray之前是否会出现3月1日非闰年的价值等等.
我可以检查闰年从使用chron的库函数leap.year,但是我想知道是否有这样做,以确保一个更简单的方法,与2月29日的天通该行以后的100年不存在将被删除,并且2月29日的新日期将添加NA值.
我试图并排绘制以下数据集
dataset1=data.frame(obs=runif(20,min=1,max=10))
dataset2=data.frame(obs=runif(20,min=1,max=20))
dataset3=data.frame(obs=runif(20,min=5,max=10))
dataset4=data.frame(obs=runif(20,min=8,max=10))
Run Code Online (Sandbox Code Playgroud)
我试图为geom_histogram 添加选项position ="dodge"而没有运气.如何更改以下代码以并排绘制直方图列而不重叠?
ggplot(data = dataset1,aes_string(x = "obs",fill="dataset")) +
geom_histogram(binwidth = 1,colour="black", fill="blue")+
geom_histogram(data=dataset2, aes_string(x="obs"),binwidth = 1,colour="black",fill="green")+
geom_histogram(data=dataset3, aes_string(x="obs"),binwidth = 1,colour="black",fill="red")+
geom_histogram(data=dataset4, aes_string(x="obs"),binwidth = 1,colour="black",fill="orange")
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用GridExtra包中的grid.table将大约40行和5列的数据帧输出到.pdf文件.
但是,对于页面来说,40行太长,因此.pdf文件只显示数据帧的一部分.我想知道我是否可以在一个页面上打印两列,以便所有行显示在一个页面上.或者,我需要知道如何在多个页面上打印数据帧.谢谢,约翰
我正在尝试使用R包ncdf创建一个多维NetCDF文件.我正在进行一组1500点的气候日常观测,每个点的观测数量为~18250.问题是NetCDF文件(create.ncdf)的结构占用4Gb,每个点使文件的大小增加超过3 Gb(put.var.ncdf)
这是我正在使用的代码:
# Make a few dimensions we can use
dimX <- dim.def.ncdf( "Long", "degrees", Longvector )
dimY <- dim.def.ncdf( "LAT", "degrees", Latvector )
dimT <- dim.def.ncdf( "Time", "days", 1:18250, unlim=FALSE )
# Make varables of various dimensionality, for illustration purposes
mv <- -9999 # missing value to use
var1d <- var.def.ncdf( "var1d", "units", dimX, mv,prec="double" )
var2d <- var.def.ncdf( "var2d", "units", list(dimX,dimY), mv,prec="double" )
var3d <- var.def.ncdf( "var3d", "units", list(dimX,dimY,dimT), mv,prec="double" ) …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种绘制字符类型矩阵的方法:
m=matrix(data=c("A","A","B","B","B","C","C","B"),nrow=4,ncol=2)
> m
[,1] [,2]
[1,] "A" "B"
[2,] "A" "C"
[3,] "B" "C"
[4,] "B" "B"
Run Code Online (Sandbox Code Playgroud)
使用一组定义的颜色
A="Yellow"
B="Blue"
C="Green"
Run Code Online (Sandbox Code Playgroud)
我应该从基体传递到ASCII和使用图像()从SP包?
我正在寻找这样的事情:

我的问题有点复杂,我不知道OpenERP.
我有一个外部数据库和一个OpenERP.外部的不是PostgreSQL.我的工作是我需要同步两个数据库中的合作伙伴.外部的一个更重要.这意味着如果外部数据的数据发生了变化,那么OpenERp的数据会发生变化,但如果OpenERP的数据发生变化则外部数据没有任何变化.
我可以访问外部数据库,使用XML RCP我也可以访问OpenERP.
我只需使用XML RCP即可从外部数据库导入数据,但问题是同步.
我不能只是插入修改后的伙伴并删除旧伙伴,
因为我无法识别旧的伙伴.
我需要更新它.但后来我需要一个id,说哪个是哪个.和外部ID.
据我所知,OpenERP可以处理外部ID.
这是如何运作的?以及如何使用此方法向res.partner添加外部ID?
有人告诉我,我不能单独创建一个新模块,我需要使用内部ID工作.
我正在使用 GAUSS/Aptech 进行计算,我只是使用“保存”语法来保存结果。
然后结果以.fmt格式保存。我猜一定有一些GAUSS的语法(或函数)可以将结果导出到.txt,但我找不到该语法(或函数)。
R中有读取.fmt文件的函数吗?
如何从填充了1和0的矩阵中取样n个随机点?
a=rep(0:1,5)
b=rep(0,10)
c=rep(1,10)
dataset=matrix(cbind(a,b,c),nrow=10,ncol=3)
dataset
[,1] [,2] [,3]
[1,] 0 0 1
[2,] 1 0 1
[3,] 0 0 1
[4,] 1 0 1
[5,] 0 0 1
[6,] 1 0 1
[7,] 0 0 1
[8,] 1 0 1
[9,] 0 0 1
[10,] 1 0 1
Run Code Online (Sandbox Code Playgroud)
我想确定我的N个样本的位置(行,col)是随机的.
我知道,sample {base}但它似乎不允许我这样做,我知道的其他方法是空间方法将迫使我添加x,y并将其更改为空间对象并再次返回到正常矩阵.
更多信息
随机意味着我也意味着在"矩阵空间"内部传播,例如,如果我对4个点进行采样,我不希望得到4个相邻点,我希望它们在"矩阵空间"中传播.
知道矩阵中我取出随机点的位置(行,列)也很重要.