R- 如何按小数点分隔符后的第一百位数字对一系列值进行分组

问题描述 投票:0回答:1

我有一个包含两列的数据框。第一列是“比率”,第二列的数字表示以该比率测量的值。 例如:

   Ratio Intensity
1  0.000  1387.785
2  0.001  1325.254
3  0.003  1307.926
4  0.004  1286.817
5  0.006  1276.197
6  0.007  1251.381
7  0.008  1249.394
8  0.010  1251.923
9  0.011  1263.183
10 0.013  1265.272
11 0.014  1303.354
12 0.015  1336.920
13 0.017  1362.173
14 0.018  1395.946
...

我想对数据进行排序并对强度求和:

   Ratio Intensity
1  0.00  1297.822
2  0.01  1311.253
3  0.02  1307.926
4  0.03  1286.817
5  0.04  1276.197
6  0.05  1251.381
7  0.06  1249.394
8  0.07  1251.923
9  0.08  1263.183
10 0.09  1265.272
11 0.10  1303.354
12 0.11  1336.920
13 0.12  1362.173
14 0.13  1395.946

如何在 R 中编写脚本来求和并导出到新的 csv 文件中? 谢谢!

r dataframe sum
1个回答
0
投票

看起来您想要平均值,而不是总和。

library(dplyr)
read.table(text = "   Ratio Intensity
1  0.000  1387.785
2  0.001  1325.254
3  0.003  1307.926
4  0.004  1286.817
5  0.006  1276.197
6  0.007  1251.381
7  0.008  1249.394
8  0.010  1251.923
9  0.011  1263.183
10 0.013  1265.272
11 0.014  1303.354
12 0.015  1336.920
13 0.017  1362.173
14 0.018  1395.946") |>
  as.data.frame() |>

  # Group by hundredth
  mutate(group = floor(Ratio*100)/100) |>

  # mean per group
  summarize(mean = mean(Intensity), .by = group)

结果

  group     mean
1  0.00 1297.822
2  0.01 1311.253
© www.soinside.com 2019 - 2024. All rights reserved.