如何计算R中随机数据的平均值

时间:2018-11-24 06:53:02

标签: r

我是R的新手。我有一个带有多列的大文件,并且被要求将数据分成两部分。我让R将数据随机分为70%分成一个名为nTrain的组,并将30%分为一个名为nTest的组。
我能够随机拆分数据,但是现在我需要计算70%随机数据中特定列的平均值,并对30%随机数据执行相同的操作。有人可以解释怎么做吗?

谢谢。

如果它有助于了解我的处境,那么这就是我到目前为止在R中的经验:

length(DataFile)

(nData=nrow(DataFile))

DataFile

set.seed(0)

(trainIdx<- sample(seq(1,nrow(DataFile)), floor(nrow(DataFile)*0.70)))

> (nTrain=length(trainIdx))
[1] 15129

> (nTest=nData-nTrain)
[1] 6484

1 个答案:

答案 0 :(得分:0)

欢迎使用Stackoverflow!

  1. 按照R惯例,对于大多数类型的配属,您都应坚持使用<-运算符(您可以找到更多信息herehere)。
  2. 您发布的代码/输出确实是不完整的(例如,缺少第一行length(DataFile)之后的输出)。

让我们逐步进行此操作。

1。创建模拟数据

set.seed(1701)
DataFile <- sample(seq(0, 1, 0.01), 10000, replace = TRUE)

2。创建数据集

# This randomizes the order
DataSet <- sample(DataFile)

3。拆分训练并测试

split <- length(DataSet) * 0.7
# You use length() for one-dimensional objects, and
# nrow() for matrices, tables, etc.

DataTrain <- head(DataSet, split)
DataTest <- tail(DataSet, length(DataSet) - split)

# This approach avoids rounding errors when splitting and
# as our dataset is already randomized we can sample linearly.

4。计算平均值

> mean(DataTrain)
[1] 0.5029891
> mean(DataTest)
[1] 0.496056