针对以下数据集进行分析和后续操作。 > options(digits=2) > Student <- c("John Davis", "Angela Williams", + "Bullwinkle Moose", "David Jones", + "Janice Markhammer", "Cheryl Cushing", + "Reuven Ytzrhak", "Greg Knox", "Joel England", + "Mary Rayburn") > Math <- c(502, 600, 412, 358, 495, 512, 410, 625, 573, 522) > Science <- c(95, 99, 80, 82, 75, 85, 80, 95, 89, 86) > English <- c(25, 22, 18, 15, 20, 28, 15, 30, 27, 18) > roster <- data.frame(Student, Math, Science, English, + stringsAsFactors=FALSE) 以上为什么要执行stringsAsFactors=FALSE?说明原因 如何进行数据标准化。将该列的列名命名为z。 将标准化后的数据对每行求均值,并保存为新的变量名score。 如何添加标准化后的数据列。将合并后的数据集命名为roster。 如何使用分位数函数将数据按照标准化后的值分为五个区间。
时间: 2024-01-14 11:02:45 浏览: 125
Pytorch-CycleGAN-Digits:针对MNIST,USPS,SVHN,MNIST-M和SyntheticDigits数据集的CycleGAN的Pytorch实现
执行 `stringsAsFactors=FALSE` 是为了避免将字符型变量转换为因子型变量,因为在进行数据处理和分析时,字符型变量的处理方法与因子型变量不同,容易引起错误。
要进行数据标准化,可以使用 `scale()` 函数,该函数可以将数据标准化为均值为0,标准差为1的形式。因此可以执行以下代码进行标准化并将列名命名为z:
```
z <- scale(roster[,2:4])
colnames(z) <- c("z_Math", "z_Science", "z_English")
```
要对每行求均值,可以使用 `apply()` 函数,其中 `MARGIN=1` 表示对行进行操作,`FUN=mean` 表示对每行求均值:
```
score <- apply(z, MARGIN=1, FUN=mean)
```
要添加标准化后的数据列,可以使用 `cbind()` 函数将原始数据集和标准化后的数据集进行合并:
```
roster <- cbind(roster, z, score)
```
要使用分位数函数将数据按照标准化后的值分为五个区间,可以使用 `cut()` 函数,其中 `breaks=5` 表示分为五个区间,`labels=FALSE` 表示使用数字代替区间标签:
```
roster$quantile <- cut(score, breaks=5, labels=FALSE)
```
执行上述代码后,`roster` 数据集将包含标准化后的数据列和分为五个区间的 `quantile` 列。
阅读全文