【发布时间】:2020-05-31 18:40:12
【问题描述】:
我在 R 中有一个数据表,我在其上应用了 cut() 和 table()。我能够根据条件获得频率表。但我得到了整体频率。我想明智地得到它。我有一个名为timestamp 的列,它有时间戳。我还有一个section 列,其值为A 或B。如何根据每一天每一节来剪。
我目前的输出:
Var1 Freq
0-30 1398
30-60 1051
60-80 1006
80-100 36
100> 2
预期输出:
Date Sec Var1 Freq
05-01-2020 A 0-30 1398
05-01-2020 A 30-60 1051
05-01-2020 A 60-80 1006
05-01-2020 A 80-100 36
05-01-2020 A 100> 2
05-01-2020 B 0-30 138
05-01-2020 B 30-60 151
05-01-2020 B 60-80 1056
05-01-2020 B 80-100 3
05-01-2020 B 100> 6
06-01-2020 A 0-30 398
06-01-2020 A 30-60 11
06-01-2020 A 60-80 16
06-01-2020 A 80-100 3666
06-01-2020 A 100> 25
06-01-2020 B 0-30 1948
06-01-2020 B 30-60 233
06-01-2020 B 60-80 33
06-01-2020 B 80-100 433
06-01-2020 B 100> 34
and so on.....
我的代码:
result = as.data.frame(table(cut(df$temp,breaks=c(0,30,60,80,100,1000),labels=c("0-30","30-60","60-80","80-100","100>"))))
样本数据:
timestamp section temp
01-05-2020 00:01:22 A 45
02-05-2020 00:01:22 A 10
03-05-2020 00:01:22 A 98
04-05-2020 00:01:22 A 23
05-05-2020 00:01:22 A 67
06-05-2020 00:01:22 A 89
07-05-2020 00:01:22 A 100
08-05-2020 00:01:22 A 110
09-05-2020 00:01:22 A 123
10-05-2020 00:01:22 A 12
01-05-2020 00:01:22 B 23
02-05-2020 00:01:22 B 44
03-05-2020 00:01:22 B 55
04-05-2020 00:01:22 B 12
05-05-2020 00:01:22 B 98
06-05-2020 00:01:22 B 45
07-05-2020 00:01:22 B 87
08-05-2020 00:01:22 B 65
09-05-2020 00:01:22 B 12
10-05-2020 00:01:22 B 8
【问题讨论】:
-
你的意见是什么
-
输入是一个3列的数据表。
timestamp、section和temp。section是A或Balways 和temp是温度范围从 0 到 150 -
你能帮我解决这个问题吗?
-
在您的 df$temp 中,'temp' 是什么
-
temp column.... 对应于温度的列。
标签: r data.table