Stata 按时间值聚合变量

Stata 按时间值聚合变量,stata,Stata,我想生成Price2变量,它是每秒price值的总和,并将这个新值添加到每个时间值的最后一行,这些时间值是相同的 这是我的数据示例(除了Price2变量)。结果是price2var.如下所示日期和时间变量是字符串 +------+-----------+----------+-------+-------------+ | Name | Day | Time | Price | Price2 | +------+-----------+---

我想生成
Price2
变量,它是每秒
price
值的总和,并将这个新值添加到每个时间值的最后一行,这些时间值是相同的

这是我的数据示例(除了
Price2
变量)。结果是
price2
var.如下所示<代码>日期和时间变量是字符串

    +------+-----------+----------+-------+-------------+
    | Name |    Day    |   Time   | Price |   Price2    |
    +------+-----------+----------+-------+-------------+
    | A    | 24-Mar-08 | 10:30:01 |     1 |            .|
    | A    | 24-Mar-08 | 10:30:01 |     4 |            .|
    | A    | 24-Mar-08 | 10:30:01 |     3 |            8|
    | A    | 24-Mar-08 | 11:03:12 |     1 |            .|
    | A    | 24-Mar-08 | 11:03:12 |     4 |            5|
    | A    | 25-Mar-08 | 10:30:01 |     3 |            .|
    | A    | 25-Mar-08 | 10:30:01 |     8 |           11|
    | A    | 25-Mar-08 | 11:13:59 |     3 |            .|
    | A    | 25-Mar-08 | 11:13:59 |     2 |            .|
    | A    | 25-Mar-08 | 11:13:59 |     5 |            .|
    | A    | 25-Mar-08 | 11:13:59 |     3 |           13|
    | A    | 25-Mar-08 | 11:59:01 |     1 |            1|
    | B    | 24-Mar-08 | 10:30:01 |     3 |            .|
    | B    | 24-Mar-08 | 10:30:01 |     4 |            7|
    | B    | 24-Mar-08 | 11:30:01 |     3 |            .|
    | B    | 24-Mar-08 | 11:30:01 |     5 |            8|
    | B    | 25-Mar-08 | 11:30:01 |     7 |            .|
    | B    | 25-Mar-08 | 11:30:01 |     4 |            .|
    | B    | 25-Mar-08 | 11:30:01 |     2 |           13|
    | B    | 25-Mar-08 | 12:00:00 |     6 |            6|
    +------+-----------+----------+-------+-------------+

如何使用Stata计算
Price2
变量?

请注意,数据作为代码,如下所示,以及在我对您上一篇文章的回答中,对于人们来说更容易使用。这在精神上与上面的例子类似

clear
input str1 Name str9(Day Time) float(Price Size)
"A" "24-Mar-08" "10:30:01" 1 3
"A" "24-Mar-08" "10:30:01" 4 4
"A" "24-Mar-08" "10:30:01" 3 2
"A" "24-Mar-08" "11:03:12" 1 4
"A" "24-Mar-08" "11:03:12" 4 1
"A" "25-Mar-08" "10:30:01" 3 4
"A" "25-Mar-08" "10:30:01" 8 2
"A" "25-Mar-08" "11:13:59" 3 2
"A" "25-Mar-08" "11:13:59" 2 4
"A" "25-Mar-08" "11:13:59" 5 5
"A" "25-Mar-08" "11:13:59" 3 3
"A" "25-Mar-08" "11:59:01" 1 5
"B" "24-Mar-08" "10:30:01" 3 6
"B" "24-Mar-08" "10:30:01" 4 1
"B" "24-Mar-08" "11:30:01" 3 2
"B" "24-Mar-08" "11:30:01" 5 1
"B" "25-Mar-08" "11:30:01" 7 3
"B" "25-Mar-08" "11:30:01" 4 6
"B" "25-Mar-08" "11:30:01" 2 2
"B" "25-Mar-08" "12:00:00" 6 2
end

bysort Name Day Time: egen wanted = total(Price)
by Name Day Time: replace wanted = . if _n < _N 

list, sepby(Name Day Time) 

     +-----------------------------------------------------+
     | Name         Day       Time   Price   Size   wanted |
     |-----------------------------------------------------|
  1. |    A   24-Mar-08   10:30:01       1      3        . |
  2. |    A   24-Mar-08   10:30:01       4      4        . |
  3. |    A   24-Mar-08   10:30:01       3      2        8 |
     |-----------------------------------------------------|
  4. |    A   24-Mar-08   11:03:12       1      4        . |
  5. |    A   24-Mar-08   11:03:12       4      1        5 |
     |-----------------------------------------------------|
  6. |    A   25-Mar-08   10:30:01       3      4        . |
  7. |    A   25-Mar-08   10:30:01       8      2       11 |
     |-----------------------------------------------------|
  8. |    A   25-Mar-08   11:13:59       3      2        . |
  9. |    A   25-Mar-08   11:13:59       2      4        . |
 10. |    A   25-Mar-08   11:13:59       5      5        . |
 11. |    A   25-Mar-08   11:13:59       3      3       13 |
     |-----------------------------------------------------|
 12. |    A   25-Mar-08   11:59:01       1      5        1 |
     |-----------------------------------------------------|
 13. |    B   24-Mar-08   10:30:01       3      6        . |
 14. |    B   24-Mar-08   10:30:01       4      1        7 |
     |-----------------------------------------------------|
 15. |    B   24-Mar-08   11:30:01       3      2        . |
 16. |    B   24-Mar-08   11:30:01       5      1        8 |
     |-----------------------------------------------------|
 17. |    B   25-Mar-08   11:30:01       7      3        . |
 18. |    B   25-Mar-08   11:30:01       4      6        . |
 19. |    B   25-Mar-08   11:30:01       2      2       13 |
     |-----------------------------------------------------|
 20. |    B   25-Mar-08   12:00:00       6      2        6 |
     +-----------------------------------------------------+
清除
输入str1名称str9(日时间)浮动(价格大小)
“A”“2008年3月24日”“10:30:01”13
“A”“2008年3月24日”“10:30:01”4
“A”“2008年3月24日”“10:30:01”3 2
“A”“2008年3月24日”“11:03:12”14
“A”“2008年3月24日”“11:03:12”4 1
“A”“2008年3月25日”“10:30:01”3 4
“A”“2008年3月25日”“10:30:01”8 2
“A”“2008年3月25日”“11:13:59”3 2
“A”“2008年3月25日”“11:13:59”2 4
“A”“2008年3月25日”“11:13:59”5
“A”“2008年3月25日”“11:13:59”3 3
“A”“2008年3月25日”“11:59:01”15
“B”“2008年3月24日”“10:30:01”3 6
“B”“2008年3月24日”“10:30:01”4 1
“B”“2008年3月24日”“11:30:01”3 2
“B”2008年3月24日“11:30:01”5 1
“B”“2008年3月25日”“11:30:01”7 3
“B”“2008年3月25日”“11:30:01”4 6
“B”2008年3月25日“11:30:01”2
“B”2008年3月25日“12:00:00”6 2
结束
bysort Name日期时间:egen wanted=总计(价格)
按名称日期时间:替换所需=。如果<\n
列表,sepby(姓名日期时间)
+-----------------------------------------------------+
|需要的名称日期时间价格大小|
|-----------------------------------------------------|
1. |    A 2008年3月24日10:30:01 13|
2. |    A 2008年3月24日10:30:01 4|
3. |    A 2008年3月24日10:30:01 3 2 8|
|-----------------------------------------------------|
4. |    A 2008年3月24日11:03:12 14|
5. |    A 2008年3月24日11:03:12 4 1 5|
|-----------------------------------------------------|
6. |    A 2008年3月25日10:30:01 3 4|
7. |    A 2008年3月25日10:30:01 8 2 11|
|-----------------------------------------------------|
8. |    A 2008年3月25日11:13:59|
9. |    A 2008年3月25日11:13:59 2 4|
10. |    A 2008年3月25日11:13:59|
11. |    A 2008年3月25日11:13:59|
|-----------------------------------------------------|
12. |    A 2008年3月25日11:59:01 15 1|
|-----------------------------------------------------|
13. |    B 2008年3月24日10:30:01 36|
14. |    B 2008年3月24日10:30:01 417|
|-----------------------------------------------------|
15. |    B 2008年3月24日11:30:01 3 2|
16. |    B 2008年3月24日11:30:01 518|
|-----------------------------------------------------|
17. |    B 2008年3月25日11:30:01 7 3|
18. |    B 2008年3月25日11:30:01 46|
19. |    B 2008年3月25日11:30:01 2 13|
|-----------------------------------------------------|
20. |    B 2008年3月25日12:00:00 6|
+-----------------------------------------------------+

请注意,数据作为代码,如下所示,以及在我对您上一篇文章的回答中,对于人们来说更容易使用。这在精神上与上面的例子类似

clear
input str1 Name str9(Day Time) float(Price Size)
"A" "24-Mar-08" "10:30:01" 1 3
"A" "24-Mar-08" "10:30:01" 4 4
"A" "24-Mar-08" "10:30:01" 3 2
"A" "24-Mar-08" "11:03:12" 1 4
"A" "24-Mar-08" "11:03:12" 4 1
"A" "25-Mar-08" "10:30:01" 3 4
"A" "25-Mar-08" "10:30:01" 8 2
"A" "25-Mar-08" "11:13:59" 3 2
"A" "25-Mar-08" "11:13:59" 2 4
"A" "25-Mar-08" "11:13:59" 5 5
"A" "25-Mar-08" "11:13:59" 3 3
"A" "25-Mar-08" "11:59:01" 1 5
"B" "24-Mar-08" "10:30:01" 3 6
"B" "24-Mar-08" "10:30:01" 4 1
"B" "24-Mar-08" "11:30:01" 3 2
"B" "24-Mar-08" "11:30:01" 5 1
"B" "25-Mar-08" "11:30:01" 7 3
"B" "25-Mar-08" "11:30:01" 4 6
"B" "25-Mar-08" "11:30:01" 2 2
"B" "25-Mar-08" "12:00:00" 6 2
end

bysort Name Day Time: egen wanted = total(Price)
by Name Day Time: replace wanted = . if _n < _N 

list, sepby(Name Day Time) 

     +-----------------------------------------------------+
     | Name         Day       Time   Price   Size   wanted |
     |-----------------------------------------------------|
  1. |    A   24-Mar-08   10:30:01       1      3        . |
  2. |    A   24-Mar-08   10:30:01       4      4        . |
  3. |    A   24-Mar-08   10:30:01       3      2        8 |
     |-----------------------------------------------------|
  4. |    A   24-Mar-08   11:03:12       1      4        . |
  5. |    A   24-Mar-08   11:03:12       4      1        5 |
     |-----------------------------------------------------|
  6. |    A   25-Mar-08   10:30:01       3      4        . |
  7. |    A   25-Mar-08   10:30:01       8      2       11 |
     |-----------------------------------------------------|
  8. |    A   25-Mar-08   11:13:59       3      2        . |
  9. |    A   25-Mar-08   11:13:59       2      4        . |
 10. |    A   25-Mar-08   11:13:59       5      5        . |
 11. |    A   25-Mar-08   11:13:59       3      3       13 |
     |-----------------------------------------------------|
 12. |    A   25-Mar-08   11:59:01       1      5        1 |
     |-----------------------------------------------------|
 13. |    B   24-Mar-08   10:30:01       3      6        . |
 14. |    B   24-Mar-08   10:30:01       4      1        7 |
     |-----------------------------------------------------|
 15. |    B   24-Mar-08   11:30:01       3      2        . |
 16. |    B   24-Mar-08   11:30:01       5      1        8 |
     |-----------------------------------------------------|
 17. |    B   25-Mar-08   11:30:01       7      3        . |
 18. |    B   25-Mar-08   11:30:01       4      6        . |
 19. |    B   25-Mar-08   11:30:01       2      2       13 |
     |-----------------------------------------------------|
 20. |    B   25-Mar-08   12:00:00       6      2        6 |
     +-----------------------------------------------------+
清除
输入str1名称str9(日时间)浮动(价格大小)
“A”“2008年3月24日”“10:30:01”13
“A”“2008年3月24日”“10:30:01”4
“A”“2008年3月24日”“10:30:01”3 2
“A”“2008年3月24日”“11:03:12”14
“A”“2008年3月24日”“11:03:12”4 1
“A”“2008年3月25日”“10:30:01”3 4
“A”“2008年3月25日”“10:30:01”8 2
“A”“2008年3月25日”“11:13:59”3 2
“A”“2008年3月25日”“11:13:59”2 4
“A”“2008年3月25日”“11:13:59”5
“A”“2008年3月25日”“11:13:59”3 3
“A”“2008年3月25日”“11:59:01”15
“B”“2008年3月24日”“10:30:01”3 6
“B”“2008年3月24日”“10:30:01”4 1
“B”“2008年3月24日”“11:30:01”3 2
“B”2008年3月24日“11:30:01”5 1
“B”“2008年3月25日”“11:30:01”7 3
“B”“2008年3月25日”“11:30:01”4 6
“B”2008年3月25日“11:30:01”2
“B”2008年3月25日“12:00:00”6 2
结束
bysort Name日期时间:egen wanted=总计(价格)
按名称日期时间:替换所需=。如果<\n
列表,sepby(姓名日期时间)
+-----------------------------------------------------+
|需要的名称日期时间价格大小|
|-----------------------------------------------------|
1. |    A 2008年3月24日10:30:01 13|
2. |    A 2008年3月24日10:30:01 4|
3. |    A 2008年3月24日10:30:01 3 2 8|
|-----------------------------------------------------|
4. |    A 2008年3月24日11:03:12 14|
5. |    A 2008年3月24日11:03:12 4 1 5|
|-----------------------------------------------------|
6. |    A 2008年3月25日10:30:01 3 4|
7. |    A 2008年3月25日10:30:01 8 2 11|
|-----------------------------------------------------|
8. |    A 2008年3月25日11:13:59|
9. |    A 2008年3月25日11:13:59 2 4|
10. |    A 2008年3月25日11:13:59|
11. |    A 2008年3月25日11:13:59|
|-----------------------------------------------------|
12. |    A 2008年3月25日11:59:01 15 1|
|-----------------------------------------------------|
13. |    B 2008年3月24日10:30:01 36|
14. |    B 2008年3月24日10:30:01 417|
|-----------------------------------------------------|
15. |    B 2008年3月24日11:30:01 3 2|
16. |    B 2008年3月24日11:30:01 518|
|---------------