首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >每四行应用函数一次

每四行应用函数一次
EN

Data Science用户
提问于 2016-04-03 15:15:55
回答 1查看 66关注 0票数 1

假设我有一个类似于这个X<-matrix(rnorm(30), nrow=100, ncol=6)的数据集。我试图找到一种方法,将sum函数应用于第3列的每四行,这意味着我希望对第1-4行、第4-8行等行进行求和。

我是否可以使用诸如“应用”或“应用”之类的功能?

EN

回答 1

Data Science用户

回答已采纳

发布于 2016-04-03 18:54:35

您可以使用tapplyaggregate

代码语言:javascript
运行
复制
set.seed(1)
X <- matrix(rnorm(30), nrow=100, ncol=6)
id <- ceiling(seq_len(nrow(X))/4)

tapply(X[, 3], id, sum)
#       1       2       3       4       5       6       7       8       9      10 
# -0.2137 -1.0629 -0.5030  0.2687  1.4961 -0.9343  2.0076  3.1162 -1.3511 -1.6868

aggregate(X[, 3], by=list(id), FUN=sum)
#    Group.1       x
# 1        1 -0.2137
# 2        2 -1.0629
# 3        3 -0.5030
# 4        4  0.2687
# 5        5  1.4961
# 6        6 -0.9343
# 7        7  2.0076
# 8        8  3.1162
# ...

# check results
sum(X[1:4, 3])
# [1] -0.2137
sum(X[5:8, 3])
# [1] -1.063
票数 2
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/11012

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档