R语言 描述性分析
在描述性分析中,我们借助各种有代表性的方法来描述我们的数据,如使用图表、图形、表格、EXCEL文件等。在描述性分析中,我们以某种方式描述我们的数据,并以一种有意义的方式呈现出来,从而使其易于理解。大多数时候,它是在小的数据集上进行的,这种分析对我们根据当前的调查结果预测一些未来的趋势有很大的帮助。一些用于描述数据集的措施是中心趋势的措施和变异性或分散性的措施。
描述性分析的过程
- 中心趋势的测量
- 变异性的测量
中心趋势的测量
它用一个单一的值来代表整个数据集。它给我们提供了中心点的位置。有三种主要的中心趋势测量方法。
- 平均值
- 模式
- 中位数
变异性测量
变异性的测量被称为数据的分布,或者说我们的数据的分布情况如何。最常见的变异性测量是。
- 范围
- 方差
- 标准偏差
描述性分析的必要性
描述性分析帮助我们理解我们的数据,是机器学习的一个非常重要的部分。这是由于机器学习是关于预测的。另一方面,统计学是关于从数据中得出结论的,这是机器学习的一个必要的初始步骤。让我们在R中做这个描述性分析。
R语言中的描述性分析
描述性分析包括使用一些汇总统计和图形来简单描述数据。在这里,我们将描述如何使用R软件来计算汇总统计。
将你的数据导入到R中
在做任何计算之前,首先,我们需要准备我们的数据,将我们的数据保存在外部的.txt或.csv文件中,最好的做法是将文件保存在当前目录中。之后,按以下方法将你的数据导入R。
在这里获取csv文件。
# R program to illustrate
# Descriptive Analysis
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv",
stringsAsFactors = F)
# Print the first 6 rows
print(head(myData))
输出
Product Age Gender Education MaritalStatus Usage Fitness Income Miles
1 TM195 18 Male 14 Single 3 4 29562 112
2 TM195 19 Male 15 Single 2 3 31836 75
3 TM195 19 Female 14 Partnered 4 3 30699 66
4 TM195 19 Male 12 Single 3 3 32973 85
5 TM195 20 Male 13 Partnered 4 2 35247 47
6 TM195 20 Female 14 Partnered 3 3 32973 66
用于计算描述性分析的R函数
平均值
它是观察值的总和除以观察值的总数。它也被定义为平均数,即总和除以计数。
其中n=术语的数量
例子
# R program to illustrate
# Descriptive Analysis
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv",
stringsAsFactors = F)
# Compute the mean value
mean = mean(myData$Age)
print(mean)
输出
[1] 28.78889
中位数
它是数据集的中间值。它将数据分成两半。如果数据集的元素数是奇数,那么中心元素就是中位数,如果是偶数,那么中位数将是两个中心元素的平均值。
其中n = 术语的数量
例子
# R program to illustrate
# Descriptive Analysis
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv",
stringsAsFactors = F)
# Compute the median value
median = median(myData$Age)
print(median)
输出
[1] 26
模式
它是指在给定的数据集中频率最高的值。如果所有数据点的频率都相同,那么该数据集可能没有模式。此外,如果我们遇到两个或更多的数据点具有相同的频率,我们可以有一个以上的模式。
例子
# R program to illustrate
# Descriptive Analysis
# Import the library
library(modeest)
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv",
stringsAsFactors = F)
# Compute the mode value
mode = mfv(myData$Age)
print(mode)
输出
[1] 25
范围
范围描述了我们的数据集中最大和最小的数据点之间的差异。范围越大,数据的分布就越广,反之亦然。
范围=最大的数据值-最小的数据值
例子
# R program to illustrate
# Descriptive Analysis
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv",
stringsAsFactors = F)
# Calculate the maximum
max = max(myDataAge)
# Calculate the minimum
min = min(myDataAge)
# Calculate the range
range = max - min
cat("Range is:\n")
print(range)
# Alternate method to get min and max
r = range(myData$Age)
print(r)
输出
Range is:
[1] 32
[1] 18 50
方差
它被定义为与平均值的平均偏差的平方。它的计算方法是:找出每个数据点与平均数(也称为平均值)之间的差值,将其平方,将所有数据点相加,然后除以我们数据集中存在的数据点数量。
其中,
N = 条款数
u = 平均数
例子
# R program to illustrate
# Descriptive Analysis
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv",
stringsAsFactors = F)
# Calculating variance
variance = var(myData$Age)
print(variance)
输出
[1] 48.21217
标准偏差
它被定义为方差的平方根。它的计算方法是找出平均数,然后从平均数中减去每个数字,这也被称为平均数,然后将结果平方。将所有的数值相加,然后除以条款的数量,最后得到平方根。
其中,
N = 项数
u = 平均数
例子
# R program to illustrate
# Descriptive Analysis
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv", stringsAsFactors = F)
# Calculating Standard deviation
std = sd(myData$Age)
print(std)
输出
[1] 6.943498
描述性分析中使用的更多R函数
四分位数
四分位数是四分位数的一种类型。第一个四分位数(Q1),被定义为最小的数字和数据集的中位数之间的中间数字,第二个四分位数(Q2)–给定数据集的中位数,而第三个四分位数(Q3),是数据集的中位数和最大值之间的中间数字。
例子
# R program to illustrate
# Descriptive Analysis
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv", stringsAsFactors = F)
# Calculating Quartiles
quartiles = quantile(myData$Age)
print(quartiles)
输出
0% 25% 50% 75% 100%
18 24 26 33 50
四分位数范围
四分位数范围(IQR),也被称为中位数或中间50%,或技术上的H-spread,是第三四分位数(Q3)和第一四分位数(Q1)之间的差异。它涵盖了分布的中心,包含了50%的观测值。
IQR = Q3 - Q1
例子
# R program to illustrate
# Descriptive Analysis
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv", stringsAsFactors = F)
# Calculating IQR
IQR = IQR(myData$Age)
print(IQR)
输出
[1] 9
R中的summary()函数
函数 summary() 可以用来显示一个变量或整个数据框架的几个统计摘要。
单一变量的总结
例子
# R program to illustrate
# Descriptive Analysis
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv",
stringsAsFactors = F)
# Calculating summary
summary = summary(myData$Age)
print(summary)
输出
Min. 1st Qu. Median Mean 3rd Qu. Max.
18.00 24.00 26.00 28.79 33.00 50.00
数据框架的摘要
例子
# R program to illustrate
# Descriptive Analysis
# Import the data using read.csv()
myData = read.csv("CardioGoodFitness.csv",
stringsAsFactors = F)
# Calculating summary
summary = summary(myData)
print(summary)
输出
Product Age Gender Education
Length:180 Min. :18.00 Length:180 Min. :12.00
Class :character 1st Qu.:24.00 Class :character 1st Qu.:14.00
Mode :character Median :26.00 Mode :character Median :16.00
Mean :28.79 Mean :15.57
3rd Qu.:33.00 3rd Qu.:16.00
Max. :50.00 Max. :21.00
MaritalStatus Usage Fitness Income Miles
Length:180 Min. :2.000 Min. :1.000 Min. : 29562 Min. : 21.0
Class :character 1st Qu.:3.000 1st Qu.:3.000 1st Qu.: 44059 1st Qu.: 66.0
Mode :character Median :3.000 Median :3.000 Median : 50597 Median : 94.0
Mean :3.456 Mean :3.311 Mean : 53720 Mean :103.2
3rd Qu.:4.000 3rd Qu.:4.000 3rd Qu.: 58668 3rd Qu.:114.8
Max. :7.000 Max. :5.000 Max. :104581 Max. :360.0