簡體   English   中英

r-dplyr:計算同一數據幀中另一個變量的每個唯一值的一個變量中唯一值的頻率

[英]r - dplyr: counting the frequency of unique values in one variable for each unique value of another variable in the same data frame

因此,這是我數據框中的一些行的示例:

> data[1:25, c("TR_DATE", "TR_TYPE...")]
  TR_DATE TR_TYPE...
1  2016-03-01          4
2  2016-03-01          4
3  2016-03-01          5
4  2016-03-01          4
5  2016-03-01          1
6  2016-03-01          7
7  2016-03-01          4
8  2016-03-01          4
9  2016-03-01          24
10 2016-03-01          23
11 2016-03-01          4
12 2016-03-02          4
13 2016-03-02          1
14 2016-03-02          1
15 2016-03-02          4
16 2016-03-02          4
17 2016-03-02          14
18 2016-03-02          4
19 2016-03-02          4
20 2016-03-03          4
21 2016-03-03          1
22 2016-03-03          4
23 2016-03-03          23
24 2016-03-03          1
25 2016-03-03          4

我想做的正是按照這樣的方式重新安排:對於每一天,我都會得到唯一交易類型的數量以及每種交易類型的頻率

這是我嘗試的代碼:

data %>%
group_by(TR_DATE) %>%
summarise(trancount = n(), trantype = n_distinct(TR_TYPE...))

這給了我想要的部分結果:

# A tibble: 68 x 3
  TR_DATE trancount trantype
   <date>     <int>    <int>
 1 2016-03-01      5816        6
 2 2016-03-02      5637        3
 3 2016-03-03      4818        3
 4 2016-03-04      5070        8
 5 2016-03-05         4        2
 6 2016-03-08      6707        5
 7 2016-03-09      5228        5
 8 2016-03-10      4722        6
 9 2016-03-11      4469        8
10 2016-03-12         1        1
# ... with 58 more rows

因此trantype告訴我在特定日期發生的唯一交易類型的數量,但是我想知道每種獨特交易類型的頻率。 最好的方法是做什么? 我嘗試環顧四周,發現類似的問題,但無法修改解決方案以滿足我的要求。 我對R相當陌生,非常感謝您的幫助。 謝謝。

您應該按兩個變量進行分組:

data %>%
group_by(TR_DATE, TR_TYPE...) %>%
summarise(trancount = n(), trantype = n_distinct(TR_TYPE...))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM