0
參見下面分配串的數據幀作爲變量
for(stockName in c("AAPLstock", "FBstock", "GOOGstock", "HPQstock", "MSFTstock", "YHOOstock")){
assign(paste(stockName), read.table(paste(stockName,'.txt', sep = ""), quote="\"", comment.char="")) }
這創建這些變量。這是所有冷卻
ls(pattern = "stock")
[1] "AAPLstock" "FBstock" "GOOGstock" "HPQstock" "MSFTstock"
[6] "stockName" "YHOOstock"
當我嘗試所有的人都分配到一個數據幀像下面
df<-list(ls(pattern = "stock"))
> df
[[1]]
[1] "AAPLstock" "FBstock" "GOOGstock" "HPQstock" "MSFTstock"
[6] "stockName" "YHOOstock"
我要的是DF含有這些股票作爲變量,而不是字符串。所以下面的函數給我想要的結果
df <- list(AAPLstock, FBstock, GOOGstock, HPQstock, MSFTstock, YHOOstock)
但是,這需要我輸入所有的變量。事情是,我會這樣做,但是會有更多的股票,我不想輸入100個變量的名稱,這將是一個痛苦的改變。所以我想要一種方法來使用ls()或類似的方法將代表變量的字符串賦值給數據框。
我試過解析和賦值,但它們仍然分配了df字符串而不是變量。
爲什麼不跳過使用分配完全,並創建一個使用lapply在你stocknames的載體命名列表? – Heroka
@何岡我該怎麼做? –
'lapply(stockNameVector,function(stockName)read.table(paste(...)' –