Il modo più pulito per affrontare questo è quello di non fare affidamento su getSymbols()
'comportamento auto-assegnazione predefinita, e invece assegnare l'oggetto serie storica a un nome più standard di propria scelta. Per esempio:
HM.B.ST <- getSymbols("HM-B.ST", auto.assign=FALSE) # h.t. Joshua Ulrich
chartSeries(HM.B.ST)
Se per qualche motivo si fai vogliono la serie temporale di mantenere il suo nome con trattino by-default, è possibile accedervi facendo:
chartSeries(`HM-B.ST`)
Il motivo funziona è che i backtick segnalano al parser R che i caratteri tra loro devono essere analizzati come un singolo nome (ovvero un simbolo), non come due nomi separati dall'operatore di sottrazione.
Per comprendere il rischio punto una volta per tutte, provare qualcosa di simile al seguente:
assign("a really stupidly constructed name!*&^", 5)
`a really stupidly constructed name!*&^`
# [1] 5
fonte
2013-10-12 18:08:17
chiusura di questo come un duplicato di una domanda simile chiesto un paio di mesi prima. –