为什么R给了我这个错误;dims[product 28550]与对象[1]的长度不匹配”;
我是新来的,所以请容忍我。 我有一个1列的数据框(df),包含28550个观察值。基本上,这是一个随时间变化的观测,时间分辨率为0.02秒。我想改变尺寸,以便有一个50行571列的数据框。这将是每秒一列。我检查它是否具有dim属性,如下所示为什么R给了我这个错误;dims[product 28550]与对象[1]的长度不匹配”;,r,dataframe,R,Dataframe,我是新来的,所以请容忍我。 我有一个1列的数据框(df),包含28550个观察值。基本上,这是一个随时间变化的观测,时间分辨率为0.02秒。我想改变尺寸,以便有一个50行571列的数据框。这将是每秒一列。我检查它是否具有dim属性,如下所示 >dim(df) [1] 28545 1 按如下方式更改数据帧的维度时: >df1 <- dim(df) <- c(50, 571) #I get the following error: Error in dim(d
>dim(df)
[1] 28545 1
按如下方式更改数据帧的维度时:
>df1 <- dim(df) <- c(50, 571)
#I get the following error:
Error in dim(df) <- c(50, 571) :
dims [product 28550] do not match the length of object [1]
有没有其他方法可以做到这一点
感谢您的帮助。一个选项是
取消列表
,在末尾用长度填充NA
。产品不匹配50*571
28545
。我想你可能需要在末尾添加一些NA
,即长度是50*571=28550
,而不是28545
。你不能只让5个以上的值出现,而不清楚你希望如何发生。请原谅这个错误,数据框有28545个观察值。但是,对于我将使用脚本的每个数据文件,这都是可变的。事实证明,在excel中将值的类别更改为“数字”解决了这个问题。这意味着数据类型,即整数,可能是问题所在?然而,添加NA并没有真正起到帮助作用。我甚至尝试在结尾添加一些数字,以匹配观察的数量。没有帮助。
matrix(unlist(t(df)), byrow=T, 50, 571)
#I get the following error:
In matrix(unlist(t(df)), byrow = T, 50, 571) :
data length [28545] is not a sub-multiple or multiple of the number of rows [50]
matrix(`length<-`(unlist(df), 50 * 571), 50, 571)
matrix(`length<-`(1:7, 10), 5, 2)