如何在R中创建bin频率表?

bin频率表是代表特定变量中一系列值的频率的表,在R中,我们通常将这些变量存储在R数据帧的向量或列中。如果我们要创建一个bin频率表,则可以使用带有割断功能的表功能。

例1

> x1<-round(runif(200,2,5))

> x1

输出结果

[1] 3 4 3 4 3 3 2 5 2 2 4 4 5 4 5 2 5 2 3 2 4 4 3 3 5 2 2 2 2 3 2 4 3 3 3 5 4

[38] 4 3 4 4 5 2 3 3 2 5 2 3 3 2 4 3 3 4 5 4 4 3 5 3 3 3 3 4 4 3 4 4 2 4 4 4 3

[75] 4 4 3 3 4 5 3 3 3 2 2 3 4 4 2 3 2 4 3 4 2 5 4 4 3 5 3 3 4 5 3 3 4 3 3 4 4

[112] 4 2 5 5 4 3 3 4 5 3 4 4 4 5 3 5 4 5 3 4 4 5 3 4 3 2 5 4 3 3 3 4 4 3 3 3 3

[149] 3 4 5 4 3 4 3 3 2 2 3 4 4 4 4 2 4 5 3 2 2 4 2 2 2 2 2 4 4 5 2 3 3 2 4 4 5

[186] 4 3 4 4 4 5 3 3 3 2 5 4 5 2 3

示例

> as.data.frame(table(cut(x1,breaks=seq(2,5,by=1))))

输出结果

Var1 Freq

1 (2,3] 67

2 (3,4] 67

3 (4,5] 29

例2

> x2<-round(runif(200,1,20))

> x2

输出结果

[1] 8 5 15 15 7 16 13 11 3 17 12 11 15 11 19 6 7 3 13 2 20 2 6 14 2

[26] 7 8 19 2 15 8 11 10 9 5 9 7 12 1 16 1 8 11 7 3 18 7 14 2 12

[51] 11 10 2 13 7 14 8 8 8 14 6 11 6 8 7 3 9 13 8 9 17 17 4 7 7

[76] 5 16 18 15 11 19 13 2 16 19 11 1 19 18 5 10 3 6 2 12 16 16 12 4 2

[101] 8 3 17 6 2 10 15 16 10 6 12 1 5 18 9 13 16 10 14 2 18 6 5 1 6

[126] 18 5 10 3 16 4 18 11 5 8 15 5 13 15 12 6 15 13 16 5 9 20 6 9 12

[151] 11 8 1 17 2 12 13 1 13 4 13 19 6 9 11 5 3 15 2 6 11 5 20 17 18

[176] 11 5 5 18 13 7 10 6 19 15 5 5 10 1 15 14 6 12 5 4 6 18 3 17 7

示例

> as.data.frame(table(cut(x2,breaks=seq(1,20,by=1))))

输出结果

Var1 Freq

1 (1,2] 13

2 (2,3] 9

3 (3,4] 5

4 (4,5] 17

5 (5,6] 16

6 (6,7] 12

7 (7,8] 12

8 (8,9] 8

9 (9,10] 9

10 (10,11] 14

11 (11,12] 10

12 (12,13] 12

13 (13,14] 6

14 (14,15] 12

15 (15,16] 10

16 (16,17] 7

17 (17,18] 10

18 (18,19] 7

19 (19,20] 3

例子3

> x3<-sample(0:9,200,replace=TRUE)

> x3

输出结果

[1] 0 6 1 5 7 1 1 4 6 1 2 4 7 0 8 1 5 9 0 4 2 3 1 9 0 3 7 0 7 3 5 0 2 6 4 7 8

[38] 0 8 5 3 3 2 8 7 0 0 5 4 1 8 9 0 1 2 4 3 2 8 4 2 4 9 3 8 5 9 8 7 1 4 9 9 9

[75] 1 1 4 4 8 6 2 2 1 4 9 4 6 1 5 3 6 4 8 3 8 7 9 9 7 8 5 5 3 9 0 9 0 8 0 9 0

[112] 1 7 3 8 5 6 6 0 2 2 8 2 8 9 5 4 7 8 9 7 0 3 5 0 4 8 7 3 1 6 0 0 4 0 2 3 9

[149] 4 6 8 2 6 6 5 7 1 0 1 8 3 4 2 9 3 9 5 7 0 5 6 1 9 9 7 3 3 9 6 0 0 7 6 1 2

[186] 6 4 8 6 9 0 4 7 0 4 6 4 2 0 4

示例

> as.data.frame(table(cut(x3,breaks=seq(0,9,by=1))))

输出结果

Var1 Freq

1 (0,1] 19

2 (1,2] 17

3 (2,3] 18

4 (3,4] 24

5 (4,5] 15

6 (5,6] 18

7 (6,7] 18

8 (7,8] 21

9 (8,9] 23

例子4

> x4<-sample(1:10,200,replace=TRUE)

> x4

输出结果

[1] 8 5 5 10 1 4 5 3 8 4 7 9 2 2 9 2 9 5 3 9 10 6 6 2 8

[26] 10 6 7 8 8 1 8 6 5 2 10 3 5 1 1 1 6 3 9 4 6 1 9 5 10

[51] 3 7 3 2 2 6 6 1 9 9 6 10 2 3 10 7 7 1 8 4 6 4 4 3 4

[76] 6 6 2 3 9 5 9 5 10 2 9 2 8 5 6 10 9 7 10 2 3 2 10 9 10

[101] 6 2 10 5 10 8 9 3 6 8 2 5 1 2 8 5 2 2 3 5 9 1 8 8 6

[126] 9 7 1 4 2 4 9 5 4 7 4 1 7 10 5 5 8 9 2 9 10 1 7 1 5

[151] 7 4 9 9 9 3 6 10 6 2 3 9 5 1 6 8 10 8 8 3 2 2 7 8 9

[176] 10 3 3 1 1 8 9 6 5 3 2 6 4 4 7 10 6 2 10 4 4 1 1 1 7

示例

> as.data.frame(table(cut(x4,breaks=seq(0,10,by=2))))

输出结果

Var1 Freq

1 (0,2] 45

2 (2,4] 34

3 (4,6] 42

4 (6,8] 33

5 (8,10] 46

范例5

> x5<-sample(501:520,100,replace=TRUE)

> x5

输出结果

[1] 502 513 519 518 515 520 517 505 501 518 507 517 508 520 505 505 504 505

[19] 506 509 518 519 505 516 511 507 509 505 506 501 505 504 514 504 519 510

[37] 512 501 517 501 516 511 514 503 508 504 513 520 502 502 516 505 502 516

[55] 515 511 507 512 519 515 509 501 502 501 509 502 518 517 516 506 520 518

[73] 514 519 511 515 520 517 519 514 520 510 502 510 508 503 503 514 515 512

[91] 510 517 505 512 517 517 520 501 513 516

示例

> as.data.frame(table(cut(x5,breaks=seq(500,520,by=2))))

输出结果

Var1 Freq

1 (500,502] 14

2 (502,504] 7

3 (504,506] 12

4 (506,508] 6

5 (508,510] 8

6 (510,512] 8

7 (512,514] 8

8 (514,516] 11

9 (516,518] 13

10 (518,520] 13

以上是 如何在R中创建bin频率表? 的全部内容, 来源链接: utcz.com/z/354315.html

回到顶部