如何在R语言中展开用户和环境变量?

2024-01-14

有什么方法可以扩展 R 中的波浪号和环境变量吗?

例如,在Python中,您可以通过写出以下一组代码来获取它:

import os
os.path.expanduser("~/r_workspace") # return "/Users/yourname/r_workspace" (in OS X)
os.path.expandvars("$R") # return "/Users/yourname/r_workspace", if you set "$R" to it in advance

R提供这样的函数吗?我不想费心去写下面的代码:

read.csv("/Users/myname/python_workspace/subdirectory_1/subdirectory_2/data.csv")

几乎相同的!

path.expand("~")
#[1] "/Users/Simon"

path.expand将通过用用户的主目录(如果在该平台上定义)替换前导波形符来扩展路径名。

And Sys.getenv()获取系统上定义的环境变量的值,例如

#  Path to R home directory
Sys.getenv( "R_HOME" )
#[1] "/Library/Frameworks/R.framework/Resources"

# Path to default R library
Sys.getenv("R_LIBS")
#[1] "~/R64Libs"

要查看可用的环境变量...

head( names(Sys.getenv()) )
#[1] "__CF_USER_TEXT_ENCODING"    "Apple_PubSub_Socket_Render" "Apple_Ubiquity_Message"    
#[4] "COMMAND_MODE"               "DISPLAY"                    "EDITOR"    

定义新的环境变量

要设置环境变量以使其始终可用于 R,您需要在名为的文件中设置该变量.Renviron默认情况下位于您的{$HOME}目录。例如创建环境变量R_WORKSPACE可用我添加行

R_WORKSPACE = ~/Documents/R/StackOverflow

To /Users/Simon/.Renivron。然后,当我加载 R 时,您会看到路径扩展是自动完成的......

#  Clean workspace - commented out so you don't wipe your session!
#  rm( list = ls() )

#  See that variable is now available in R
Sys.getenv( "R_WORKSPACE" )
[1] "~/Documents/R/StackOverflow"

See the 在这里回答 https://stackoverflow.com/a/3892699/1478381了解更多信息和选项。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在R语言中展开用户和环境变量? 的相关文章

随机推荐

  • 使用起订量模拟 HttpMessageHandler - 如何获取请求的内容?

    在决定我要发回测试的响应类型之前 有没有办法获取 http 请求的内容 多个测试将使用此类 每个测试将有多个 http 请求 此代码无法编译 因为 lambda 不是async并且有一个await在里面 我是异步等待的新手 所以我不知道如何
  • 使用 docker 在 AWS ray 集群上启动简单的 python 脚本

    我发现遵循 Ray 指南在 ray 集群上运行 docker 映像以执行 python 脚本非常困难 我发现缺乏简单的工作示例 所以我有最简单的docker文件 FROM rayproject ray WORKDIR usr src app
  • Java:高效的ArrayList过滤?

    我需要过滤 ArrayList 并删除找到的元素 作为 Java 的新手 我想知道实现此目的最有效的方法是什么 很重要 因为它在移动设备上运行 目前我这样做 We display only top level dealers parentI
  • 带两个参数的 MVC6 属性路由

    我已经对此进行了查看 并且没有任何与 MVC6 taghelper 锚标记相关的内容与满足多个参数的替代 HttpGet 方法相关 当然 您可以向 MVC6 锚标记帮助器添加多个参数 但是如何使用属性路由处理带有两个参数的第二个选项 我有两
  • 崩溃并终止原因 0xdead10cc

    请问这起事故的原因是什么 Incident Identifier A176CFB8 6BB7 4515 A4A2 82D2B962E097 CrashReporter Key f02957b828fe4090389c1282ca8e3839
  • Windows Phone 7 上带有盐的 SHA1

    我现在花了一些时间研究如何使用盐将密码编码为 SHA1 这是我在网络应用程序部分使用的代码 但它不适用于电话环境 public class Password private string password private int salt
  • Python unicode:如何测试 unicode 字符串

    我有一个这样的脚本 Python26 coding utf 8 import sys import xlrd import xlwt argset set sys argv 1 import wb xlrd open workbook ex
  • groovy 中的 get 与 getProperty

    令我惊讶的是 根据groovy的文档 groovy可以使用 getProperty 方法来获取对象的属性 因此 当我想更改获取特殊对象属性的行为时 我使用类别类来重写 getProperty 方法 然而 它不起作用 最后 我发现groovy
  • Python SSL:证书验证失败

    我在连接时遇到错误www mydomain com在使用 Windows 8 1 的相当新的机器上使用 Python 2 7 12 错误是SSL CERTIFICATE VERIFY FAILED on the ssl sock conne
  • 分割数据框

    打印 df A B 0 10 1 30 2 50 3 20 4 10 5 30 A B 0 10 1 30 A B 2 50 A B 3 20 4 10 5 30 你可以使用pd cut https pandas pydata org pa
  • 如何使用 C# 使用 DomainName 获取 AD 中的 OU 名称列表?

    我想从 Active Directory 获取 OU 列表 我只有域名 我如何使用 C 实现这一目标 尝试这样的事情 connect to RootDSE to find default naming context DirectoryEn
  • javascript 对 HTML 元素进行就地排序 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 继续为javascript 对 HT
  • MULTIPART_FORM_DATA:找不到 public javax.ws.rs.core.Response 类型的参数的注入源

    我正在使用基于 Jersey 的 Restful 服务实现策略来构建一个用于上传文件的服务 我的服务类名称是 UploadFileService java 参见下面的代码 package com jerser service import
  • 如何以及何时使用“async”和“await”

    据我了解 主要的事情之一是async and await https learn microsoft com en us dotnet csharp async这样做的目的是使代码易于编写和阅读 但使用它们是否等于生成后台线程来执行长时间的
  • 使用 OpenCV 打开 USB 摄像头

    我想在 Linux Mint 18 3 上使用 C 语言的 OpenCV 打开 USB 摄像头 相机已插入并可与 Common Vision Blocks 的 SoftwareSuite 配合使用 来自命令lsusb我得到以下输出 Bus
  • 为什么要同时使用 os.path.abspath 和 os.path.realpath?

    在多个开源项目中 我见过人们这样做os path abspath os path realpath file 获取当前文件的绝对路径 然而 我发现os path abspath file and os path realpath file
  • 为什么表达式上的 static_cast 具有分布式作用?

    我需要取 2 个无符号 8 位值并减去它们 然后将该值添加到 32 位累加器 8 位减法可能会下溢 但没关系 unsigned int 下溢是已定义的行为 因此没有问题 我希望static cast
  • 为什么我的 CSS 代码不适用于我的 Html 页眉和页脚? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 需要一些帮助 陷入了非常关键的时刻 我必须在明天之前完成这项工作 但我的 CSS 代码不适用于页眉和页脚 而同一文件适用于其他内容 如字体系
  • jOOQ - 与嵌套子查询连接

    假设我想知道是谁写的CLRS在书中数据库 表BOOK AUTHOR带连接表BOOK AUTHOR SelectConditionStep
  • 如何在R语言中展开用户和环境变量?

    有什么方法可以扩展 R 中的波浪号和环境变量吗 例如 在Python中 您可以通过写出以下一组代码来获取它 import os os path expanduser r workspace return Users yourname r w