- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我提供了一个大型数据框的小示例,我正在处理 >1,000 列和 >200 行。我想使每列的每个重复行成为一行而不是两行,同时取与第 1 列相关的每个值的平均值(平均值的列是 Col 6-8 等等) .
Col1 Col2 Col3 Col4 Col5 Col6 Col7 Col8 Col9 Col10
A-001 7 40 1 J 3.985645 4.231623 2.36987 9.36545852 8.369663
A-001 7 40 1 J 1.458798 7.652123 1.236985 4.236987 1.22556633
B-002 8 50 0 K 5.00212 8.369562 7.4569852 5.36692 4.6632121
B-002 8 50 0 K 9.02336 1.2120145 3.0014588 8.214569 5.2223698
C-003 10 60 1 L 1.451203 5.321455 8.25963 2.03369878 4.3336988
C-003 10 60 1 L 1.65653 2.369898 8.2136999 7.21458777 5.3366
D-004 3 70 0 M 5.323211 1.147852 7.20014 5.36989 2.36555
D-004 3 70 0 M 4.36969 5.231478 4.23698 3.645478 9.214563
E-005 4 80 1 N 8.123256 9.2356478 5.3696 4.698889 7.366695
E-005 4 80 1 N 7.9632145 0.004555 1.24789 7.3696969 1.23655
预期输出:
col 1 col 2 col 3 col 4 col 5 col 6
A-001 7 40 1 J 2.49282
B-002 8 50 0 K 7.01274
C-003 10 60 1 L 1.55387
D-004 3 70 0 M 4.84645
E-005 4 80 1 N 8.04324
我提前为没有以正确的格式制作它而道歉预先感谢您提供的任何帮助
dd <- structure(list(col1 = structure(c(1L, 1L, 2L, 2L, 3L, 3L, 4L,
4L, 5L, 5L), .Label = c("A-001", "B-002", "C-003", "D-004", "E-005"
), class = "factor"), col2 = structure(c(1L, 1L, 2L, 2L, 3L,
3L, 4L, 4L, 5L, 5L), .Label = c("7", "8", "10", "3", "4"), class = "factor"),
col3 = c(40L, 40L, 50L, 50L, 60L, 60L, 70L, 70L, 80L, 80L
), col4 = c(1, 1, 0, 0, 1, 1, 0, 0, 1, 1), col5 = c(JL, JL, KL, KL, LL, LL, ML, ML, NL,
NL), col6 = c(3.985645, 1.458798, 5.00212, 9.02336, 1.451203, 1.65653, 5.323211,
4.36969, 8.123256, 7.9632145), col7 = c(4.231623, 7.652123, 8.369562, 1.2120145,
5.321455, 2.369898, 1.147852, 5.231478, 9.2356478, 0.004555), col8 = c(2.36987,
1.236985, 7.4569852, 3.0014588, 8.25963, 8.2136999, 7.20014, 4.23698, 5.3696,
1.24789), col9 = c(9.36545852, 4.236987, 5.36692, 8.214569, 2.03369878, 7.21458777,
5.36989, 3.645478, 4.698889, 7.3696969), col10 = c(8.369663, 1.22556633, 4.6632121,
5.2223698, 4.3336988, 5.3366, 2.36555, 9.214563, 7.366695, 1.23655)), .Names =
c("col1", "col2", "col3", "col4", "col5", "col6", "col7", "col8", "col9", "col10"),
class = "data.frame", row.names = c(NA, -10L))
最佳答案
这使用 dplyr
,它对于大数据来说速度很快。第一部分提取未聚合的唯一列,第二部分进行聚合(通过 col1 组)。然后将这两部分绑定(bind)在一起 (bind_cols
)。我重命名了您的列以删除空格,如果您保留空格,则需要在名称中使用反引号(即 `col 1`)
library(dplyr)
cols <- 6:10 # columns to average
bind_cols(
dat %>% distinct(col1) %>% .[,-cols], # pull out columns we aren't aggregating
dat[,c(1, cols)] %>% group_by(col1) %>%
summarise_each(funs(mean)) %>% .[,-1] # aggregate other columns
)
# col1 col2 col3 col4 col5 col6 col7 col8 col9 col10
# 1 A-001 7 40 1 J 2.49282 5.94187 1.80343 6.80122 4.79762
# 2 B-002 8 50 0 K 7.01274 4.79079 5.22922 6.79075 4.94279
# 3 C-003 10 60 1 L 1.55387 3.84568 8.23667 4.62414 4.83515
# 4 D-004 3 70 0 M 4.84645 3.18967 5.71856 4.50768 5.79006
# 5 E-005 4 80 1 N 8.04324 4.62010 3.30875 6.03429 4.30162
这太复杂了,多亏了@StevenBeaupré,简单的版本是(*_each 函数当然可以删除列!)
dat %>% group_by(col1) %>% mutate_each(funs(mean), -(1:5)) %>% distinct
关于删除重复行并计算 R 数据框中的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31215795/
我有一个大小为 320x320 像素的阈值图像。我通过设置 ROI 以 20x20 像素的 block 循环遍历整个图像。我需要找到每个 block 的平均值。所以我将这些图像 block 传递给函数
我正在尝试学习 Javascript。我已经构建了以下代码来从一组数字中找到平均值。它有效除了最后返回的值总是 NaN。我不知道为什么。如果我将这 block 移到 block 外,它似乎完全忘记了变
假设我的数据已经分组,我该如何计算中位数和其他统计数据? Index Value Count 0 6 2 1 2 3 2 9 8 在上面
我试图计算的有趣情况。基本上在一行中,我有产品名称,其右侧的行是自首次收到产品以来经过的天数。 为 ex 计算的天数是 =TODAY()-BB2 我现在要做的是识别让我们说产品词“卡车”,然后计算卡车
我想知道如何计算某些数字的累积平均值。我将举一个简单的例子来描述我在寻找什么。 我有以下号码 vec 1) 为您的向量(或列表、一维数组或您如何称呼它)的每个元素评估此表达式,您将获得累积平均值。
我正在尝试对数据库表中的每一行进行平均。但它不能正常工作我想忽略该值,如果为空,它不会计算为零。使用我的代码,它将空值计算为零我想这样做 MS Excel 如果行/单元格为空,它将忽略。 Contro
我有以下信息(按 View 返回): DateTime ItemID UserTyp Seconds 2012-01-01 10 S 12 2012-01-01
我正在使用excel的average函数来获取欧洲各个城市一系列酒店价格的平均值。 =average(21,42,63,84,105) 我希望能够计算每个平均函数中的变量数量(例如,在上面的示例中有
我有一长串列,我想一次性计算非零中位数、平均值和标准差。我不能只删除基于 1 列的 0 行,因为同一列中另一列的值可能不是 0。 下面是我目前的代码,用于计算中位数、平均值等,包括零。 agg
这是我的问题: 我有一张这样的 table : Table Log int id; int time; timestamp DATE; int sid (FK to table Site);
JSON: [{"id":"1","user":"001","answer":"1,1,3,2,2,1,3,2"}, {"id":"2","user":"002","answer":"2,3,3,2,
有个问题: 使用适当的列名称,显示 obs 类型“CONT”的允许 ID 和平均 obs 值,其中 CONT 的平均 obs 值 >= 40。 假设承认是表1,观察是表2,但具有相同的主键Admit_
我有一个记录传感器数据的应用程序,我希望能够从多个传感器生成平均值,可以是一个、两个、三个或很多... 编辑:这些是温度传感器,因此 0 是传感器可能作为值存储在数据库中的值。 我最初的出发点是这个
我有这样一个数据框 id power flag 0 20 0 1 25 0 2 26 1 3 30 1 4 18 0 5
我想计算所有事件 blob 的平均位置。为此,首先我需要所有 X 和 Y 位置的总和。在这种情况下我该怎么做? contourFinder.findContours(grayImg, minB
我是一个十足的 Java 新手。上周一开始,之前从未用任何语言进行过任何编程。因此,如果我发现简单的事情变得复杂,请耐心等待。 我收到了一个文本文件。如下图: 第一个数据是时间(午夜过后的秒数),第二
我正在尝试为 Audacity 编写一个简单的测量插件,它就像用石头砸我的头骨一样有趣。我想要做的就是获取一段音频并找到所有样本的平均值(该 block 的 DC offset ),这样我就可以将它作
我正在尝试计算给定多边形内的值: 实际上我正在使用这个管道: 'aggregation': { 'pipeline': [ { "$match" : {
我有一个 pandas DataFrame,其中包含包含列表的列。我正在尝试获取此专栏中列表的方法。 这是我的 DataFrame 的示例: Loc Background 0
我尝试加速计算放置在数组中的4d向量的平均值。这是我的代码: #include #include #include #include #include #include typedef f
我是一名优秀的程序员,十分优秀!