小编And*_*ian的帖子

如何对R(新更新)中的纵向温度序列进行分段/样条回归?

这里我有温度时间序列面板数据,我打算为它运行分段回归或三次样条回归.首先,我快速研究了分段回归概念及其在R in中的基本实现,SO初步了解了如何继续我的工作流程.在我的第一次尝试中,我试图通过使用splines::nsin splinespackage 来运行样条回归,但是我没有得到正确的条形图.对我来说,使用基线回归或分段回归或样条回归可以起作用.

以下是我的面板数据规范的一般情况:在下面显示的第一行是我的因变量,以自然对数项和自变量表示:平均温度,总降水量和11个温度箱以及每个箱宽(AKA,箱窗) )是3摄氏度.(< - 6,-6~-3,-3~0,...> 21).

可重复的例子:

以下是使用实际温度时间序列面板数据模拟的可重现数据:

set.seed(1) # make following random data same for everyone
dat <- data.frame(index=rep(c("dex111", "dex112", "dex113", "dex114", "dex115"), 
                          each=30),
                year=1980:2009,
                region= rep(c("Berlin", "Stuttgart", "Böblingen", 
                              "Wartburgkreis", "Eisenach"), each=30),
                ln_gdp_percapita=rep(sample.int(40, 30), 5), 
                ln_gva_agr_perworker=rep(sample.int(45, 30), 5),
                temperature=rep(sample.int(50, 30), 5), 
                precipitation=rep(sample.int(60, 30), 5), 
                bin1=rep(sample.int(32, 30), 5), 
                bin2=rep(sample.int(34, 30), 5), 
                bin3=rep(sample.int(36, 30), 5),
                bin4=rep(sample.int(38, 30), 5), 
                bin5=rep(sample.int(40, 30), 5), 
                bin6=rep(sample.int(42, 30), 5),
                bin7=rep(sample.int(44, 30), 5), 
                bin8=rep(sample.int(46, 30), 5), 
                bin9=rep(sample.int(48, 30), …
Run Code Online (Sandbox Code Playgroud)

regression r plm non-linear-regression

7
推荐指数
1
解决办法
371
查看次数

R CMD检查错误:如何摆脱Windows上devel R包中的隐藏文件和目录?

我正在Rstudio上构建我的R包,我正在运行R CMD检查我的包.但是,R CMD检查警告几个可能导致错误的问题.我检查了我的项目主目录,确实隐藏了一些文件,现在我将它们设置为可见.出于好奇,如何.gitignore, .Rproj.user, .git在我的包目录中停止存在?R CMD检查抱怨这些,因为这些文件不是包的属性,也不是R包结构约定.如何在我的包裹中摆脱这些警告?我试图在我的机器上创建虚拟包,但这些属性总是显示在包主目录中,为什么在使用Rstudio构建R包时会发生这种情况?如何修复此CMD检查错误?有什么好主意吗?

根据R Extension手册的编写,R包结构应该是:

myPackage
 `- inst
     `- extdata
             `- data1.csv
             `- data2.csv
 `- R
    `- ...
 `- NAMESPACE
 `- man
     `-hello.Rd
 `- DESCRIPTION
Run Code Online (Sandbox Code Playgroud)
  • 注意 :

这是R CMD检查的会话,错误信息的一部分如下:

找到以下可执行文件:.git/objects/00/bc868b99806415c87749e4a2e060f99eb811da .git/objects/01/10cc76aa5573ca9401e72b36ad3672b39f23cb .git/objects/01/5c9910f52a0560426a1b00e1e31e1f060afdfb .git/objects/03/0ca1ef161838ebeb6a225f354a6a8eec95e472 ....

  .git/objects/fd/6439dfc6532e7e3a76e76b3e4ca4fd683b2c5e
  .git/objects/fd/ebc184b447002ee6239231093eb026b9bb3aec
  .git/objects/fe/02f64dd278d70ff2e5fb212834d131bc23fddb
  .git/objects/ff/15763b397945d0ee2e2523eab1bfd460f84529
  .git/objects/ff/5413a4dc5f2710fe30ad14f4eb10992ad5aee4
  .git/objects/ff/b8e86c018008d3cee09871f76df3a7277cb1c7
Source packages should not contain undeclared executable files.
See section 'Package structure' in the 'Writing R Extensions' manual.
* checking for hidden files and directories ... NOTE
Found the following hidden files and directories:
  .gitignore …
Run Code Online (Sandbox Code Playgroud)

windows cmd r rstudio

6
推荐指数
1
解决办法
1162
查看次数

如何有效地为列表中的大型data.frame对象进行子集化?

我在列表中有data.frame对象,我将根据每个的最后一列(AKA,得分)过滤掉.列表的子集对我来说很直观,但我希望有两个不同的集合(即通过/失败)作为每个data.frame对象的过滤结果.我认为我使用的方式并不优雅,并寻求更好/更有效的解决方案.谁能指出我如何为这类任务实现更优雅的解决方案?非常感谢 !

玩具数据:

mylist <- list(df1=data.frame( from=seq(1, by=4, len=16), to=seq(3, by=4, len=16), score=sample(30, 16)),
               df2=data.frame( from=seq(3, by=7, len=20), to=seq(6, by=7, len=20), score=sample(30, 20)),
               df3=data.frame( from=seq(4, by=8, len=25), to=seq(7, by=8, len=25), score=sample(30, 25)))
Run Code Online (Sandbox Code Playgroud)

我最初的尝试:

pass <- lapply(mylist, function(ele_) {
  ans <- subset(ele_, ele_$score > 20)
  ans
})
Run Code Online (Sandbox Code Playgroud)

事实证明,我也希望在实例不符合过滤条件的情况下使用其相反的设置,并将每个data.frame对象的pass,fail set放入一个列表中.

所需的输出:每个data.frame对象都可以在子集化后通过,失败设置.

如果我在列表中有非常大的data.frame对象,那么这样做会更好吗?有没有人知道有用的技巧?

r list subset dataframe

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

有没有办法从列表中删除重复的索引?

我有矢量列表,其中存在一些重复索引.我打算使用重复的方法删除这种重复,但它不能有效地摆脱这种重复.有谁知道这么容易做到这一点的伎俩?如何从idxList中删除重复?任何的想法 ?

例:

idxList <- list(f1=c(1,2,2,3,4,1,1,2,4,3,7),
               f2=c(1,5,5,2,3,4,4,6,1,5),
               f3=c(1,1,4,6,7,7,2,3,3,5,8))
Run Code Online (Sandbox Code Playgroud)

我打算用重复的方法来摆脱重复的索引,它不会有效.

我的预期输出是:

desiredOUT <- list(
  f1=c(1,2,3,4,7),
  f2=c(1,5,2,3,4,6),
  f3=c(1,4,6,7,2,3,5)
)
Run Code Online (Sandbox Code Playgroud)

如何获得预期的输出?任何人都可以指出我该怎么办?提前致谢

r list duplicates

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