R中的数据帧头
我试图使用R对oracle数据库中的数据进行一些计算。我连接到数据库并正确提取了数据R中的数据帧头,r,R,我试图使用R对oracle数据库中的数据进行一些计算。我连接到数据库并正确提取了数据 > y=dbGetQuery(con, "select distinct(fk_parametro) from t_datos") > y FK_PARAMETRO 1 30 2 42 3 43 4 83 5 87 6 1 7 6 8
> y=dbGetQuery(con, "select distinct(fk_parametro) from t_datos")
> y
FK_PARAMETRO
1 30
2 42
3 43
4 83
5 87
6 1
7 6
8 44
9 20
10 14
11 86
12 88
13 85
14 81
15 35
16 8
17 80
18 89
19 7
20 12
21 82
22 9
23 10
以下命令。。作品:
> sum(y)
[1] 1042
但是这个。。失败:
> mean(y)
[1] NA
Warning message:
In mean.default(y) : argument is not numeric or logical: returning NA
我认为这是因为R将标题“FK_PARAMETRO”视为一个元素。有人能帮我弄清楚吗?正如@akrun所评论的,这很有效
mean(y[,1])
或者正如@pierrelaffortune所建议的,我们也可以这样做
colMeans(y)
您可能需要
mean(y[,1])
作为示例y两件事:您正试图获取df not-specific列的平均值。此外,您的查询似乎正在从数据库中提取外键。为什么要在关键字段上运行聚合(总和、平均值等)?模式和计数可能更相关。您甚至可以在Oracle查询中运行聚合,按FK分组(提供不同的FK):从t_datos组中按FK_参数选择FK_参数、Sum(qtyfield)、Avg(qtyfield)、Count(qtyfield)
Parfait。我只想测试。。我的代码实际上不使用列“FK_PARAMETRO”进行这些计算。平均值(y[,1])非常有效。谢谢!!我什么也没等。老实说我还不知道答案有什么问题。。顺便说一句再次感谢。再见,没关系。没问题。