在R语言中,当创建数据框时,如果参数值导致不同的行数,就会出现错误“参数值意味着不同的行数”。例如,以下代码会导致该错误:

> mp <- data.frame(time=c(6,6,6,7,10,13,16,22,23,6,9,10,11,17,19,20,25,32,32,34,35,NA,NA,NA,NA,NA,NA,NA,NA),trt=c(rep('6-MP',11),rep(NA,19)),event=c(rep(1,11),rep(0,19), NA))
Error in data.frame(time = c(6, 6, 6, 7, 10, 13, 16, 22, 23, 6, 9, 10,  : 
  参数值意味着不同的行数: 29, 30, 31

这是因为time向量包含29个值,trt向量包含30个值,event向量包含31个值。

解决方法:

您可以通过将NA值替换为0来解决这个问题,如下所示:

> mp <- data.frame(time=c(6,6,6,7,10,13,16,22,23,6,9,10,11,17,19,20,25,32,32,34,35,rep(0,7)),trt=c(rep('6-MP',11),rep(NA,19)),event=c(rep(1,11),rep(0,19), 0))
> mp

   time   trt event
1     6 6-MP     1
2     6 6-MP     1
3     6 6-MP     1
4     7 6-MP     1
5    10 6-MP     1
6    13 6-MP     1
7    16 6-MP     1
8    22 6-MP     1
9    23 6-MP     1
10    6 6-MP     1
11    9 6-MP     1
12   10 6-MP     0
13   11 6-MP     0
14   17 6-MP     0
15   19 6-MP     0
16   20 6-MP     0
17   25 6-MP     0
18   32 6-MP     0
19   32 6-MP     0
20   34 <NA>     0
21   35 <NA>     0
22    0 <NA>     0
23    0 <NA>     0
24    0 <NA>     0
25    0 <NA>     0
26    0 <NA>     0
27    0 <NA>     0
28    0 <NA>     0
29    0 <NA>    NA

现在数据框的行数为29,与time向量的长度相同。

R语言数据框错误:参数值意味着不同的行数 - 解决方法

原文地址: https://www.cveoy.top/t/topic/n6wz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录