小编use*_*921的帖子

如何在for循环中重命名数据框

我对使用R编程非常陌生,但我正在尝试在多个文件中读取目录并为每个文件指定一个唯一的名称.我正在使用R中的Dendrochronology Program Library(包dpIR)和read.tucson函数读取文件.虽然我正在使用特定的包,但我认为我的问题相当笼统:

在循环中,我想通过将a "t"与每个单独的文件名连接来创建文件.所以,如果我有一个"2503"在我的目录中命名的文件,我想在R中创建一个名为的数据帧"t2503".接下来,我想在r.tucson每个数据帧中使用该函数读取数据.我只是用数据覆盖串联,而不是将读入数据分配给数据帧.有人可以帮我弄清楚我错过了哪一步?

这是我尝试使用的代码:

#set to appropriate directory
setwd("C:/work")

#get a list of files in the directory
files <- list.files()
numfiles <- length(files)

for (i in 1:numfiles)
{
    name<-paste("t",files[i],sep="")
    name<-read.tucson(files[i],header=NULL)
}
Run Code Online (Sandbox Code Playgroud)

for-loop r

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

如何使用R获取缺失值之前的列中最后10个值的平均值?

我是R的新手,很难搞清楚这一点.我有关于死树的树木生长率的数据,按年组织.所以,我的第一列是年份,右边的列是单个树木的增长率,在每棵树死亡的那一年结束.树死后,数据集中剩余年份的值为"NA".我需要在每棵树死亡之前的10年内采取平均增长,但每棵树在不同的年份死亡.有没有人知道如何做到这一点?以下是数据集的外观示例:

Year    Tree1   Tree2   Tree3
1989    53.00   84.58   102.52
1990    63.68   133.16  146.07
1991    90.37   103.10  233.58
1992    149.24  127.61  245.69
1993    96.20   54.78   417.96
1994    230.64  60.92   125.31
1995    150.81  60.98   100.43
1996    124.25  42.73   75.43
1997    173.42  67.20   50.34
1998    119.60  73.40   32.43
1999    179.97  61.24   NA
2000    114.88  67.43   NA
2001    82.23   55.23   NA
2002    49.40   NA  NA
2003    93.46   NA  NA
2004    104.67  NA  NA
2005    44.14   NA  NA
2006    88.40   NA  NA
Run Code Online (Sandbox Code Playgroud)

所以,我需要计算的平均值是:

Tree1: mean(1997-2006) …
Run Code Online (Sandbox Code Playgroud)

r moving-average

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

标签 统计

r ×2

for-loop ×1

moving-average ×1