首页 > 解决方案 > 为什么我的数据框的 row.names 长度 (R) 无效?

问题描述

这是我尝试用 R 编写的第一个程序,所以我对这种语言非常不熟悉。请多多包涵。

操作系统:Windows 10、64

我正在尝试使用 SixSigma 包对数据集执行 GageRR 研究。下面是我的程序的数据和输出。

> library(SixSigma)
> 
> gage_data <- read.table("GageRR_Builder.txt", header = TRUE)
> 
> print(gage_data)
   Run Part Op Measurement
1    1    1  1   11.180467
2    2    2  1   13.111185
3    3    3  1   14.302257
4    4    4  1   11.708924
5    5    5  1   10.049168
6    6    6  1   14.658745
7    7    7  1   12.472272
8    8    8  1   12.141214
9    9    9  1   13.084559
10  10   10  1   11.949147
11  11    1  2    7.524312
12  12    2  2   11.171440
13  13    3  2   11.173480
14  14    4  2    8.253074
15  15    5  2    9.459740
16  16    6  2   11.460830
17  17    7  2   10.944759
18  18    8  2   12.600976
19  19    9  2   11.707084
20  20   10  2    8.830791
21  21    1  3    7.232328
22  22    2  3   10.313218
23  23    3  3    9.600429
24  24    4  3    8.345994
25  25    5  3    8.979838
26  26    6  3   10.866170
27  27    7  3    9.607047
28  28    8  3   10.127380
29  29    9  3    9.270419
30  30   10  3    9.227614
31  31    1  4    8.041690
32  32    2  4   10.191358
33  33    3  4   10.514001
34  34    4  4   10.175313
35  35    5  4    7.514386
36  36    6  4    9.201600
37  37    7  4   11.319800
38  38    8  4    9.919284
39  39    9  4   10.132705
40  40   10  4    9.335912
> 
> print(row.names(gage_data))
 [1] "1"  "2"  "3"  "4"  "5"  "6"  "7"  "8"  "9"  "10" "11" "12" "13" "14" "15" "16" "17" "18" "19" "20" "21" "22"
[23] "23" "24" "25" "26" "27" "28" "29" "30" "31" "32" "33" "34" "35" "36" "37" "38" "39" "40"
> 
> ss.rr(var = Measurement, part = Part, appr = Op, data = gage_data, main = "Main thing")
Error in `.rowNamesDF<-`(x, value = value) : invalid 'row.names' length
> 

从我查找的内容来看,此错误意味着 id 列的长度与我的其余数据列的长度不匹配。这就是我打印 row.names 的原因,因为我认为我在创建该列时一定做错了(我一开始并没有直接创建)。我不明白的部分是我的所有列的长度都是 40,ID 列也是如此。是否将标题计为长度的一部分?如果是这样,我将如何解决这个问题?

感谢您提供的任何帮助!

标签: r

解决方案


推荐阅读