要做的case中需要批量读取一个文件夹中所有的tif文件,想要读取每一个并给予对应的变量名。

setwd("D:/case_age/data/wc2.1_10m_tavg")
all_td <- list.files(getwd())

前两步分别是设定工作目录和读取文件夹中所有文件,没有啥问题,而批量生成变量并赋值这一步出现了问题。

for (i in 1:length(all_td)){result_i = readGDAL(all_td[i])
}

首先尝试了直接刚,只能输出一个结果显然不行。也搜不到在变量名中使用占位符的方法。

然后尝试先生成变量,然后再分配:

file_tname=paste("result",c(1:length(all_td)),sep="")
for (i in 1:length(all_td)){file_tname[i] = readGDAL(all_td[i])
}

会出现如下报错:

这是因为读取的文件是空间数据,如果换成普通的数值就能正常执行。

在查询了诸多方法后,总算找到了个有用的方法:总算是能够成功运行了。核心就是eval函数和parse函数。在处理别的数据类型时,应该只要按照需要修改括号中的代码就能正常运行了。

参考网址:r 批量产生变量名并赋值 - R语言论坛 - 经管之家(原人大经济论坛)

for (i in 1:length(all_td)) {eval(parse(text=paste(paste('f_t',i,sep=''), '= readGDAL(all_td[',i,'])')))}

如何在R语言中for循环批量创建变量并赋值相关推荐

  1. r语言for循环的c(),R语言中for循环的并行处理方式

    前言 本文用于记录笔者在将R语言中的for语句并行化处理中的一些问题. 实验 这里使用foreach和doParallel包提供的函数实现for语句的并行处理. for语句脚本 func return ...

  2. R语言eval,parse批量生成变量并赋值

    R语言程序有时需要根据一定的规律批量生成变量,并赋值,如果手动一个个写出变量名并赋值太麻烦.可以通过eval结合parse函数批量操作. ### 把1:10 分别赋给10个变量,变量名按规律生成 fo ...

  3. r语言中,如何将分类变量化为虚拟变量

    在 R 中,可以使用 model.matrix 函数将分类变量转换为虚拟变量(也称为 one-hot 编码). 例如,假设你有一个数据框 df,其中包含一列名为 fruit 的分类变量,其取值为 &q ...

  4. r语言中的while循环_R编程中的While循环

    r语言中的while循环 In addition to the for loop we discussed earlier, R also offers another kind of loop to ...

  5. r语言中paste函数_R中的paste()函数-简要指南

    r语言中paste函数 Using the paste() function in R will be straight and simple. In this tutorial let's see ...

  6. r语言显示找不到read_html,R语言中read.table函数不常见的用法-文本中有#注释符号...

    自从开始学习R语言,read.table是较早接触到的函数,因为要读取数据,也因为最开始学习数据分析是用"制表分隔符的txt"文件比较多,xlsm在linux系统中又不太合适,所以 ...

  7. R语言中的apply函数族

    原文出处:http://blog.fens.me/r-apply/ 前言 刚开始接触R语言时,会听到各种的R语言使用技巧,其中最重要的一条就是不要用循环,效率特别低,要用向量计算代替循环计算. 那么, ...

  8. R语言中的apply函数用法

    刚开始接触R语言时,会听到各种的R语言使用技巧,其中最重要的一条就是不要用循环,效率特别低,要用向量计算代替循环计算. 那么,这是为什么呢?原因在于R的循环操作for和while,都是基于R语言本身来 ...

  9. 1071svm函数 r语言_如何利用R语言中的rpart函数建立决策树模型

    决策树是根据若干输入变量的值构造出一个适合的模型,以此来预测输出变量的值,并用树形结构展示出来.决策树主要有两个类别:分类树和回归树.分类树主要针对离散的目标变量,回归树则针对连续的目标变量.R语言中 ...

最新文章

  1. 一起学习下一线大厂的分布式唯一ID生成方案!
  2. linux复盘:构架搭建lamp(安装)
  3. 剪映导出帧率选多少_剪映帧率怎么设置?剪映帧率设置方法
  4. 多种时间格式字符串转换为Date对象
  5. 使用Python+Tensorflow的CNN技术快速识别验证码
  6. list 分组_Todo List(源码已上传git): 待办事项自定义分组 - 第三章
  7. Why Go Is Not Good
  8. 20165318 预备作业3 Linux安装及学习
  9. wttr.in -- a magical website
  10. Matlab连接字符串的方法
  11. java中ping多个ip_在Java中ping多个服务器
  12. xp系统工作组计算机没有权限访问权限,XP系统工作组计算机没有法访问如何处理?...
  13. python词频统计西游记_基于Python第三方插件实现西游记章节标注汉语拼音
  14. 2013-2014 ACM-ICPC, NEERC, Southern Subregional Contest Problem F. Judging Time Prediction 优先队列...
  15. windows核心编程之用户模式下的线程同步
  16. Android项目开发Crime
  17. 黑群晖vmm专业版_折腾群晖笔记:利用VMM虚拟机 安装LEDE旁路由 实现软路由超强功能...
  18. python玩微信小程序游戏_使用python实现微信小程序自动签到功能
  19. 《操作系统》学习笔记|6.6外存空间管理
  20. 后端进度报告(2018.5.17)

热门文章

  1. 近世代数 笔记与题型连载 第十三章(环与域)
  2. 【一起入门NLP】中科院自然语言处理第5课-循环神经网络RNN(BPTT+LSTM+GRU)
  3. 在国内企业做数据治理,建议您考个DAMA-CDGA/CDGP证书
  4. python中scipy.optimize_浅谈SciPy中的optimize.minimize实现受限优化问题
  5. ORACLE动态sql在存储过程中出现表或视图不存在的解决方法
  6. Revit二次开发——字体的问题
  7. NRF24L01 + ESP32 通信测试,基于PlatformIO+Arduino框架
  8. 开箱即用!Linux 内核首个原生支持,让你的容器体验飞起来!| 龙蜥技术
  9. Flink:Flink-SQL开发
  10. 企业怎么选择文件加密软件,加密软件哪个好用?