使用 R 重塑数据时未定义的列问题
Undefined column problem while reshaping data with R
我是 R 的初学者,对于学术课程,我需要将数据框重塑为长格式(面板数据)。我的数据框由 65 列组成,其中 61 列是从 1960 年到 2020 年的年份,而其他与国家/地区相关(每个条目 1 个国家/地区)。
gdp <- reshape(GDP, varying= 1960:2020, v.names = "GDPpercapita", timevar = "Year", times = 1960:2020, direction = "long")
但是,我收到以下错误:
Error in `[.data.frame`(data, , varying.i) : undefined columns selected
我试图通过文档和一些论坛查找我的错误来源,但我仍然找不到问题所在。
任何人都可以向我解释我做错了什么吗?
编辑:
我发现如果我改用 c("1960","2020")
,它适用于这两列。
是否存在一种简单、常规且有效的方法来使用从 1960 年到 2020 年的所有值而无需单独编写 65 列?
而不是 c("1960", "2020")
,使用 as.character(1960:2020)
。
我是 R 的初学者,对于学术课程,我需要将数据框重塑为长格式(面板数据)。我的数据框由 65 列组成,其中 61 列是从 1960 年到 2020 年的年份,而其他与国家/地区相关(每个条目 1 个国家/地区)。
gdp <- reshape(GDP, varying= 1960:2020, v.names = "GDPpercapita", timevar = "Year", times = 1960:2020, direction = "long")
但是,我收到以下错误:
Error in `[.data.frame`(data, , varying.i) : undefined columns selected
我试图通过文档和一些论坛查找我的错误来源,但我仍然找不到问题所在。
任何人都可以向我解释我做错了什么吗?
编辑:
我发现如果我改用 c("1960","2020")
,它适用于这两列。
是否存在一种简单、常规且有效的方法来使用从 1960 年到 2020 年的所有值而无需单独编写 65 列?
而不是 c("1960", "2020")
,使用 as.character(1960:2020)
。