当在R中的data.table中使用“ melt”功能时,为什么出现此错误消息“找不到功能” patterns”

问题描述 投票:1回答:1

我正在使用data.table(版本1.10.4)来清理数据(顺便说一句,我已经安装了“ reshape2”),但是我得到了以下消息:

melt_check(数据,id.vars,measure.vars,variable.name,value.name)中的错误:找不到函数“模式”

我检查了很多次,但不知道为什么。我在下面发布我的代码,任何人都可以看一下,并告诉我哪里错了吗?谢谢。

library(reshape2)
library(data.table)
library(readxl)
data<-read_excel("Time3Ratee.xlsx")
meltdata<-melt(data,id = 1:4, measure = patterns ("^ratee\\d+$","^RICB.peer\\d+\\.1", "^RICB.peer\\d+\\.2","^RICB.peer\\d+\\.3", "^TICB.peer\\d+\\.1", "^TICB.peer\\d+\\.2","^TICB.peer\\d+\\.3","^LE.peer\\d+\\.1", "^LE.peer\\d+\\.2","^LE.peer\\d+\\.3","^LE.peer\\d+\\.4", "^DEV.peer\\d+\\.1", "^DEV.peer\\d+\\.2","^DEV.peer\\d+\\.3"), value.name = c("ratee", "RICB.peer.1", "RICB.peer.2","RICB.peer.3", "TICB.peer.1", "TICB.peer.2","TICB.peer.3", "LE.peer.1", "LE.peer.2","LE.peer.3","LE.peer.4", "DEV.peer.1", "DEV.peer.2","DEV.peer.3"))
r data.table reshape reshape2
1个回答
0
投票

((将@Franks评论转换为答案)

为了能够使用data.table::melt,您需要通过使用data.tableas.data.table()将数据集转换为setDT()类。>

setDT(data)

否则,melt将默认为reshape2::melt,您将无法使用data.tables功能,例如patterns

© www.soinside.com 2019 - 2024. All rights reserved.