Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 基于另一个变量的变量的摘要统计信息_R_Structure_Summary - Fatal编程技术网

R 基于另一个变量的变量的摘要统计信息

R 基于另一个变量的变量的摘要统计信息,r,structure,summary,R,Structure,Summary,我试图找出ID中有多少个x值,其中一些值是重复的,然后根据新的结果找到总体的最小值、最大值、IQR和中值 ID <- c("ID004", "ID004", "ID004", "ID004", "ID006", "ID006", "ID006", "ID006", "ID006", "ID006&quo

我试图找出ID中有多少个x值,其中一些值是重复的,然后根据新的结果找到总体的最小值、最大值、IQR和中值

ID <- c("ID004", "ID004", "ID004", "ID004", "ID006", "ID006", "ID006", "ID006", "ID006", "ID006", "ID006", "ID006", "ID006", "ID006", "ID006", "ID009", "ID009", "ID009", "ID009", "ID009", "ID009", "ID020", "ID020")
D <- c("CMP-001", "CMP-001","CMP-001","CMP-001","CMP-001", "CMP-001","CMP-002", "CMP-002", "CMP-002", "CMP-003", "CMP-003", "CMP-003", "CMP-004", "CMP-004", "CMP-004", "CMP-001", "CMP-001", "CMP-001", "CMP-001", "CMP-002", "CMP-002", "CMP-001", "CMP-001")
X <- c(3,3,3,3,1,1,3,3,3,1,1,1,4,4,4,4,4,4,4,2,2,2,2)
data <- data.frame(ID, D, X)
然后根据这个结果我们应该得到以下结果

                          Min.    Median.    Max.     IQR
Number of X per ID        1         1.5        4      3-1
我认为我们需要创建一个新变量,其中包括每个ID的X值。然后找到新变量的汇总统计信息

感谢您的帮助

希望回答:

> data %>% group_by(ID) %>% summarise(Min = min(X), Median = median(X), Max = max(X), IQR = IQR(X), No_of_X_values = length(rle(X)[[1]]))
`summarise()` ungrouping output (override with `.groups` argument)
# A tibble: 4 x 6
  ID      Min Median   Max   IQR No_of_X_values
  <chr> <dbl>  <dbl> <dbl> <dbl>          <int>
1 ID004     3      3     3   0                1
2 ID006     1      3     4   2.5              4
3 ID009     2      4     4   1.5              2
4 ID020     2      2     2   0                1
> 
>数据%>%分组依据(ID)%>%总结(最小值=最小值(X),中位数=中位数(X),最大值=最大值(X),IQR=IQR(X),没有任何值=长度(rle(X)[[1]]))
`summary()`解组输出(用`.groups`参数重写)
#一个tibble:4x6
ID最小中值最大IQR值的数量
1 ID004 3 3 0 1
2 ID006 1 3 4 2.5 4
3 ID009 2 4 1.5 2
4 ID020 2 0 1
> 
可以在新数据框中存储x值的ID和编号,并对x值的编号进行汇总统计:

> x_values <- data %>% group_by(ID) %>% summarise(No_of_X_values = length(rle(X)[[1]]))
`summarise()` ungrouping output (override with `.groups` argument)
> x_values
# A tibble: 4 x 2
  ID    No_of_X_values
  <chr>          <int>
1 ID004              1
2 ID006              4
3 ID009              2
4 ID020              1
> summary(x_values$No_of_X_values)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
    1.0     1.0     1.5     2.0     2.5     4.0 
>x_值%group_by(ID)%%>%摘要(没有x_值=长度(rle(x)[[1]]))
`summary()`解组输出(用`.groups`参数重写)
>x_值
#一个tibble:4x2
ID No_X_值的_
1 ID004 1
2 ID006 4
3 ID009 2
4 ID020 1
>汇总(x_值$No_of_x_值)
最小第一个曲中位数平均第三个曲最大值。
1.0     1.0     1.5     2.0     2.5     4.0 
希望这能回答:

> data %>% group_by(ID) %>% summarise(Min = min(X), Median = median(X), Max = max(X), IQR = IQR(X), No_of_X_values = length(rle(X)[[1]]))
`summarise()` ungrouping output (override with `.groups` argument)
# A tibble: 4 x 6
  ID      Min Median   Max   IQR No_of_X_values
  <chr> <dbl>  <dbl> <dbl> <dbl>          <int>
1 ID004     3      3     3   0                1
2 ID006     1      3     4   2.5              4
3 ID009     2      4     4   1.5              2
4 ID020     2      2     2   0                1
> 
>数据%>%分组依据(ID)%>%总结(最小值=最小值(X),中位数=中位数(X),最大值=最大值(X),IQR=IQR(X),没有任何值=长度(rle(X)[[1]]))
`summary()`解组输出(用`.groups`参数重写)
#一个tibble:4x6
ID最小中值最大IQR值的数量
1 ID004 3 3 0 1
2 ID006 1 3 4 2.5 4
3 ID009 2 4 1.5 2
4 ID020 2 0 1
> 
可以在新数据框中存储x值的ID和编号,并对x值的编号进行汇总统计:

> x_values <- data %>% group_by(ID) %>% summarise(No_of_X_values = length(rle(X)[[1]]))
`summarise()` ungrouping output (override with `.groups` argument)
> x_values
# A tibble: 4 x 2
  ID    No_of_X_values
  <chr>          <int>
1 ID004              1
2 ID006              4
3 ID009              2
4 ID020              1
> summary(x_values$No_of_X_values)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
    1.0     1.0     1.5     2.0     2.5     4.0 
>x_值%group_by(ID)%%>%摘要(没有x_值=长度(rle(x)[[1]]))
`summary()`解组输出(用`.groups`参数重写)
>x_值
#一个tibble:4x2
ID No_X_值的_
1 ID004 1
2 ID006 4
3 ID009 2
4 ID020 1
>汇总(x_值$No_of_x_值)
最小第一个曲中位数平均第三个曲最大值。
1.0     1.0     1.5     2.0     2.5     4.0 

感谢您的尝试,但这不是正确的答案,我认为我们需要创建一个新变量,每个ID包含X的值。然后找到新变量的汇总统计信息。好的,添加了一个变量,该变量的每个变量的计数都在X中,如果您需要不同格式的结果,您可以分享一些示例输出。您是否希望@KarthikS在上面的回答中对
count\u per\u X
列进行汇总统计?请尝试
data%%>%groupby(ID)%%>%summary(n=n())%%>%summary()
您添加的变量应与我问题中的第一个结果匹配。(也就是说,ID004只有1个值是3但重复,第二个ID006有4个值是(1,3,1,4)等。您是指X中ID唯一的值吗?
data%%>%group\u by(ID)%%>%summary(unique=unique(X))%%>%summary()
感谢您的尝试,但这不是正确的答案,我认为我们需要创建一个新变量,其中每个ID包含X的值。然后查找新变量的汇总统计信息。好的,我们添加了一个变量,该变量的每个变量的计数都在X中,如果您需要不同格式的结果,请共享一些示例输出。您想要s吗在@KarthikS的回答中,
count\u per\u X
列上的汇总统计数据?尝试
data%>%group\u by(ID)%%>%summary(n=n())%%>%summary()
您添加的变量应该与我问题中的第一个结果匹配。(即,ID004只有一个值是3,但重复,第二个ID006有4个值是(1,3,1,4)etcYou是指X中按ID显示的唯一值?
data%%>%group_by(ID)%%>%summary(unique=unique(X))%%>%summary()