R Steamgraph错误:“无效的下标类型列表”

时间:2015-08-08 22:47:29

标签: r visualization stream-graph

使用steamgraph包

我收到以下错误
 library(streamgraph)
 streamgraph(data, "Keys" ,"Box.Office", date = 11-11-2011, interactive=TRUE)
Error in .subset(x, j) : invalid subscript type 'list'

数据样本:

days;Box.Office;Key

1; 2324234;Lucy

2; 123123;Lucy

3; 898989;Lucy

.....

1; 231231;Interstellar

2; 32423;Interstellar

1 个答案:

答案 0 :(得分:2)

首先,您的代码中存在拼写错误:Keys应为Keyinteractive参数默认设置为TRUE,您不需要指定它。

问题很可能是streamgraph不知道如何处理days列,实际上如果您使用某些内容(数字或字符)更改days列转换为as.Date它运作良好。

official page的示例显示所有示例都有可以解释为有效日期的列(数字或字符),此外,只需键入streamgraph即可浏览函数体R,你会更仔细地看到它的作用。

使用提供的数据,要允许功能工作,您需要其他信息。以下是我将days列转换为日期的示例。它运作良好并产生情节。

library(streamgraph)
streamgraph(df, "Key" ,"Box.Office", "days")

只需使用此数据:

df <- structure(list(days = structure(c(0, 1, 2, 0, 1), class = "Date"), 
    Box.Office = c(2324234L, 123123L, 898989L, 231231L, 32423L
    ), Key = c("Lucy", "Lucy", "Lucy", "Interstellar", "Interstellar"
    )), .Names = c("days", "Box.Office", "Key"), row.names = c(NA, 
-5L), class = "data.frame")