我如何从数据帧中删除NA以便在数据帧上使用sapply

时间:2019-02-28 12:45:39

标签: r na sapply

我有一个数据框:

            colA           colB
1           15.3           1.76
2           10.8           1.34
3            8.1           1.27
4           19.5           1.47
5            7.2           1.27
6            5.3           1.49
7            9.3           1.31
8           11.1           1.09
9            7.5           1.18
10          12.2           1.22
11           6.7           1.25
12           5.2           1.19
13          19.0           1.95
14          15.1           1.28
15           6.7           1.52
16           8.6             NA
17           4.2           1.12
18          10.3           1.37
19          12.5           1.19
20          16.1           1.05
21          13.3           1.32
22           4.9           1.03
23           8.8           1.12
24           9.5           1.70

我如何能够删除/更改所有NA的值,以便当我使用sapply(即sapply(x, mean))时,我取平均值为24行colAcolB的23列的情况?

我知道数据帧必须具有相同的行数,因此使用na.omit()之类的方法将不起作用,因为在这种情况下,它会删除第16行;在计算colA的平均值时,我会丢失一行数据。

谢谢!

1 个答案:

答案 0 :(得分:0)

您应该能够通过Filters.ne并获得平均值

示例:

na.rm = TRUE