我有一个关于在R中映射的最佳实现的问题。例如,我有10个模型和300个股票,我需要使用这些模型来处理。每个股票都由一个符号表示,需要由其中一个模型进行处理。我想要一张地图,这样我就能得到模型的符号。例如,IBM、AAPL、MSFT是由模型M1处理的。F,GM,CAT,M2等.有没有办法做类似于Model =XXX(符号)的事情?
模型是大的,我不想有一个名单与290重复我的10个型号,所以我需要某种形式的访问,通过引用,只有10个模型实际分配。
发布于 2015-02-11 07:34:23
您可以用库存和相关的模型号创建数据框架:
mapping <- data.frame(stock=c("IBM", "AAPL", "MSFT", "F", "GM", "CAT"),
model=c(1, 1, 1, 2, 2, 2))您可以使用标准索引查找给定股票的型号:
mapping$model[mapping$stock == "AAPL"]
# [1] 1一个稍微简单一些的语法是带有命名向量的:
mapping2 <- c(IBM=1, AAPL=1, MSFT=1, F=2, GM=2, CAT=2)
mapping2["AAPL"]
# AAPL
# 1 如果您有一个名为mods的模型列表,您可以使用这个索引为您的股票查找适当的模型:
mods[[mapping$model[mapping$stock == "AAPL"]]]
mods[[mapping2["AAPL"]]https://stackoverflow.com/questions/28448327
复制相似问题