首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >变量前的美元符号

变量前的美元符号
EN

Stack Overflow用户
提问于 2012-09-12 21:29:27
回答 3查看 52.6K关注 0票数 27

我有这个示例代码来从现有数据框'my_ data‘创建一个新的数据框'new_data’。

代码语言:javascript
复制
new_data = NULL
n = 10 #this number correspond to the number of rows in my_data
conditions = c("Bas_A", "Bas_T", "Oper_A", "Oper_T") # the vector characters correspond to the target column names in my_data
for (cond in conditions){
    for (i in 1:n){
        new_data <- rbind(new_data, c(cond, my_data$cond[i]))
    }
}

问题是my_data$cond (其中cond是一个变量,而不是列名)不被接受。

如何通过在美元符号后使用变量值来调用数据框的列?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-09-12 21:45:13

要访问列,请使用:

代码语言:javascript
复制
my_data[ , cond]

代码语言:javascript
复制
my_data[[cond]]

可以使用以下命令访问ith行:

代码语言:javascript
复制
my_data[i, ]

将两者结合起来以获得所需的值:

代码语言:javascript
复制
my_data[i, cond]

代码语言:javascript
复制
my_data[[cond]][i]
票数 39
EN

Stack Overflow用户

发布于 2015-05-27 06:36:14

我想你需要get()

例如,

get(x,list),其中list是列表,x是变量(可以是字符串),它等于list$x

但在get(x,list)中,使用$时,x可以是变量,而x不能是变量。

票数 4
EN

Stack Overflow用户

发布于 2016-07-11 03:16:48

$适用于列,而不是单个列对象。它是矢量化的一种形式。代码

代码语言:javascript
复制
corrections$BookDate = as.Date(corrections$BookDate, format = "%m/%d/%Y")

corrections表的BookDate列的内容从字符串转换为Date对象。它在一个操作中执行它,赋值。

执行以下操作,它将解决您的问题:

代码语言:javascript
复制
new_data <- rbind(new_data, c(cond, my_data$cond))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12389318

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档