【问题标题】:Creating a vector dynamically [closed]动态创建向量[关闭]
【发布时间】:2013-07-13 11:45:40
【问题描述】:

我有一个逗号分隔的配置文件,其中包含 2 个元素:

Attribute,  Method
------------------
   Design,    Text
Objective,    Text
 Adaptive, Boolean

我正在阅读如下配置文件:

for (i in 1:nrow(Attributes)) {
    if (Attributes$Method[i]=='Text') {
        output<- doc[i:End_Line];
    }
}

问题是:对于配置文件中的每个属性,我想写入一个单独的向量,其名称是使用配置文件中的属性名称动态创建的。

所以在运行结束时,我希望有 3 个不同的向量。

我尝试使用:output$Attributes$Attribute &lt;- doc[i:End_Line] 但没有运气。想知道以前有没有人这样做过?

提前非常感谢, 西马克

【问题讨论】:

  • 2 个元素后跟 4 个对象,这令人困惑。可能会显示配置文件的内容,以及您想要的结果。
  • 抱歉 - 已重新格式化。希望现在清楚吗?
  • 第一个会是:c("design", "text"),名称为“design”,还是名称为“design”,仅包含“text”?
  • 太不清楚了,请提供一个简短的示例文件和预期的 R 输出。
  • 抱歉不清楚并浪费了您的时间……我想,我想通了。我试图为从文件中读取的每个属性生成一个“向量”。相反,我正在使用列表,它工作正常。再次感谢您回复帖子并深表歉意。

标签: r


【解决方案1】:

我可能会从这个开始,因为我仍然不确定你在追求什么:

data <- read.csv("file.csv")
rownames(data) <- data[,1]
data

然后您可以像这样轻松地单独访问它们:

data[1,]
data[2,]

但也像这样:data["Adaptive", ]

告诉我,我会相应地更新答案。

【讨论】:

    猜你喜欢
    • 2021-05-05
    • 1970-01-01
    • 2019-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多