小编Nat*_*sta的帖子

在R上的csv文件中获取平均值

我是R的初学者.我正在参加Coursera R编程课程,我被困在一个作业(污染物意味着家庭作业).作业的目的是从csv文件中的列中获取方法.这些文件有四列.我们有300多个文件,每个文件有1000多个观察结果.他们中的大多数都是NA.在我正在使用的csv文件中,只有117个数字观察.我一直在尝试这样的东西:

cmydata1 <- read.csv("/Users/joshuavincent/Documents/specdata/001.csv")
Run Code Online (Sandbox Code Playgroud)

一旦我有cmydata1,我试图得到其中一个列的平均值,"硝酸盐",但我得到了这个:

> mean(cmydata1, "nitrate")
[1] NA
Warning message:
In mean.default(cmydata1, "nitrate") :
  argument is not numeric or logical: returning NA
Run Code Online (Sandbox Code Playgroud)

为了解决这个问题,我创建了一个这样的新列表:

> cmydata2 <- list(na.omit(cmydata1))
> cmydata2[[1]]
Run Code Online (Sandbox Code Playgroud)

结果是清洁的矩阵,不再是NA

列名称为:"Date""sulfate""nitrate"和ID.

但是,我仍然无法得到平均值

> mean(cmydata2, "nitrate")
[1] NA
Warning message:
In mean.default(cmydata2, "nitrate") :
  argument is not numeric or logical: returning NA
Run Code Online (Sandbox Code Playgroud)

我尝试修复它,所以我输入...并获得null

> colnames(cmydata2)
NULL
Run Code Online (Sandbox Code Playgroud)

那么,我可以修复什么来获得该列的平均值?(之后我觉得必须尝试循环和东西才能完成作业,但我会迈向宝贝的步骤)

请注意,这可能有所帮助:我在自动填充中有一个带有表格图标的cmydata1,而cmydata2有一些形状,看起来像一个organigram图标.

谢谢

r

1
推荐指数
1
解决办法
3903
查看次数

标签 统计

r ×1