如何计算r中行的标准差
您可以使用以下基本语法来计算 R 中行的标准差:
row_stdev <- apply(df, 1, sd, na. rm = TRUE )
以下示例展示了如何在 R 中使用此语法。
示例:计算 R 中行的标准差
假设我们在 R 中有以下数据框:
#create data frame df <- data. frame (game1=c(12, 15, 15, 18, 29, 30, 31), game2=c(15, 17, 17, 16, 29, 8, 14), game3=c(8, 22, 27, 35, 29, 22, 17)) #view data frame df game1 game2 game3 1 12 15 8 2 15 17 22 3 15 17 27 4 18 16 35 5 29 29 29 6 30 8 22 7 31 14 17
我们可以使用以下语法来计算每行中值的标准差:
#calculate standard deviation of each row
row_stdev <- apply(df, 1, sd, na. rm = TRUE )
#view standard deviation of each row
row_stdev
[1] 3.511885 3.605551 6.429101 10.440307 0.000000 11.135529 9.073772
从结果我们可以看出:
- 第一行值的标准差是3.511885 。
- 第二行中的值的标准差是3.605551 。
- 第三行中的值的标准差是6.429101 。
等等。
如果我们愿意,我们还可以使用transform()函数向数据框中添加一个新列,用于显示每行中值的标准差:
#add column that displays standard deviation of each row df <- transform(df, row_stdev=apply(df, 1, sd, na. rm = TRUE )) #view updated data frame df game1 game2 game3 row_stdev 1 12 15 8 3.511885 2 15 17 22 3.605551 3 15 17 27 6.429101 4 18 16 35 10.440307 5 29 29 29 0.000000 6 30 8 22 11.135529 7 31 14 17 9.073772
名为row_stdev的新列显示每行中值的标准差。
注:第 5 行中的值的标准差为零,因为每个值都相同,因此值中不存在“间隙”。
相关:如何解释零标准差
其他资源
以下教程解释了如何在 R 中执行其他常见功能: