在R中生成条件摘要统计信息?
对于这个相当简单的问题,我深表歉意,因为尽管我有一些计量经济学/回归分析的R方面的经验,但我还是设法跳过了学习如何在R中创建基本汇总统计数据的过程。我如何生成一个输出,1)计算特定的观察值的数量 对于此数据帧,如何计算特定列中每种类型的不同观察数(即:列“侧”中有多少个Ls和Rs)?如果“Side”列等于“L”(例如,当“Side”等于“L”时,绿色、红色或蓝色占时间的百分比是多少),我如何从中细分“State”列的计数和百分比在R中生成条件摘要统计信息?,r,dataframe,R,Dataframe,对于这个相当简单的问题,我深表歉意,因为尽管我有一些计量经济学/回归分析的R方面的经验,但我还是设法跳过了学习如何在R中创建基本汇总统计数据的过程。我如何生成一个输出,1)计算特定的观察值的数量 对于此数据帧,如何计算特定列中每种类型的不同观察数(即:列“侧”中有多少个Ls和Rs)?如果“Side”列等于“L”(例如,当“Side”等于“L”时,绿色、红色或蓝色占时间的百分比是多少),我如何从中细分“State”列的计数和百分比 Side State Color Type
Side State Color Type
L O Green B
R C Red Q
R O Red C
R O Blue L
L C Green B
L C Yellow C
以下是我正在寻找的输出类型:
Side Count %
L 13 38%
R 21 68%
对于侧面=L
Color Count %
Green 4 31
Red 7 54
Blue 1 8
Yellow 1 8
对于侧面=R
Color Count %
Green 11 52
Red 4 19
Blue 2 10
Yellow 4 19
您可以使用
count
计算频率,使用prop.table
计算比率
对于每个侧
:
library(dplyr)
df %>%
count(Side, name = 'Count') %>%
mutate(Perc = prop.table(Count) * 100)
df %>%
count(Side, Color, name = 'Count') %>%
group_by(Side) %>%
mutate(Perc = prop.table(Count) * 100)
对于每个侧的颜色
:
library(dplyr)
df %>%
count(Side, name = 'Count') %>%
mutate(Perc = prop.table(Count) * 100)
df %>%
count(Side, Color, name = 'Count') %>%
group_by(Side) %>%
mutate(Perc = prop.table(Count) * 100)
您可以使用count
计算频率,使用prop.table
计算比率
对于每个侧
:
library(dplyr)
df %>%
count(Side, name = 'Count') %>%
mutate(Perc = prop.table(Count) * 100)
df %>%
count(Side, Color, name = 'Count') %>%
group_by(Side) %>%
mutate(Perc = prop.table(Count) * 100)
对于每个侧的颜色
:
library(dplyr)
df %>%
count(Side, name = 'Count') %>%
mutate(Perc = prop.table(Count) * 100)
df %>%
count(Side, Color, name = 'Count') %>%
group_by(Side) %>%
mutate(Perc = prop.table(Count) * 100)
我们可以使用summary
和groupby
library(dplyr)
df %>%
group_by(Side) %>%
summarise(Count = n(), .groups = 'drop') %>%
mutate(Perc = 100 * Count/sum(Count))
# A tibble: 2 x 3
# Side Count Perc
# <chr> <int> <dbl>
#1 L 3 50
#2 R 3 50
库(dplyr)
df%>%
分组(并排)%>%
摘要(计数=n(),.groups='drop')%>%
变异(Perc=100*计数/总和(计数))
#一个tibble:2x3
#侧面计数Perc
#
#1升3 50
#2 R 3 50
第二种情况
df %>%
group_by(Side, Color) %>%
summarise(Count = n(), .groups = 'drop_last') %>%
mutate(Perc = 100 * Count/sum(Count))
# A tibble: 4 x 4
# Groups: Side [2]
# Side Color Count Perc
# <chr> <chr> <int> <dbl>
#1 L Green 2 66.7
#2 L Yellow 1 33.3
#3 R Blue 1 33.3
#4 R Red 2 66.7
df%>%
按(侧面、颜色)分组%>%
总结(计数=n(),.groups='drop_last')%>%
变异(Perc=100*计数/总和(计数))
#一个tibble:4x4
#小组:方(二)
#侧色计数Perc
#
#1升绿色2 66.7
#2升黄色1 33.3
#3R蓝色133.3
#4R红色266.7
数据
df我们可以使用summary
和groupby
library(dplyr)
df %>%
group_by(Side) %>%
summarise(Count = n(), .groups = 'drop') %>%
mutate(Perc = 100 * Count/sum(Count))
# A tibble: 2 x 3
# Side Count Perc
# <chr> <int> <dbl>
#1 L 3 50
#2 R 3 50
库(dplyr)
df%>%
分组(并排)%>%
摘要(计数=n(),.groups='drop')%>%
变异(Perc=100*计数/总和(计数))
#一个tibble:2x3
#侧面计数Perc
#
#1升3 50
#2 R 3 50
第二种情况
df %>%
group_by(Side, Color) %>%
summarise(Count = n(), .groups = 'drop_last') %>%
mutate(Perc = 100 * Count/sum(Count))
# A tibble: 4 x 4
# Groups: Side [2]
# Side Color Count Perc
# <chr> <chr> <int> <dbl>
#1 L Green 2 66.7
#2 L Yellow 1 33.3
#3 R Blue 1 33.3
#4 R Red 2 66.7
df%>%
按(侧面、颜色)分组%>%
总结(计数=n(),.groups='drop_last')%>%
变异(Perc=100*计数/总和(计数))
#一个tibble:4x4
#小组:方(二)
#侧色计数Perc
#
#1升绿色2 66.7
#2升黄色1 33.3
#3R蓝色133.3
#4R红色266.7
数据
df Ronak,一如既往,你真是太棒了。如果我想让分析更进一步——比如:我怎么能像你在“Side”中那样显示颜色的汇总统计数据呢=L和“State”=0。换句话说,如果我添加另一个条件,我怎么能显示完全相同的东西。@rogues77在这种情况下,你可以添加groupu by
Color
而不是groupu by
Side
。Ronak,你总是很了不起。如果我想让分析更深入一步呢?例如:我如何显示摘要当“Side”=L和“State”=0时的颜色统计。换句话说,如果我添加另一个条件,如何显示完全相同的内容。@rogues77在这种情况下,您可以添加groupby
color
而不是groupby
Side
。