计算 R 中“是”或“否”响应的比例

Chr*_*ova 1 r mean dataframe categorical-data

我对 R 很陌生,并且真的很想了解所有事情(甚至参加在线课程 - 到目前为止还没有任何帮助)。

我首先使用的是一个大型数据框,其中包含 97 个与法规合规性相关的变量。

我已经根据不同的地理位置创建了多个数据框(可能有一种更简单的方法来做到这一点)。

在每个数据框中,我有 7 个变量,我想找到“是”和“否”响应的平均值。

我首先尝试:

    summary(urban$vio_bag)
   Length     Class      Mode 
      398 character character
Run Code Online (Sandbox Code Playgroud)

然而,除了我有 398 个回复之外,这并没有告诉我任何有用的信息。

所以我把它放到一个表中:

urbanbag<-table(urban$vio_bag)
Run Code Online (Sandbox Code Playgroud)

这至少为我提供了“是”和“否”答案的数量

 Var1  Freq
1 No   365
2 Yes  30
Run Code Online (Sandbox Code Playgroud)

所以我然后转换为 data.frame:

urbanbag = as.data.frame(urbanbag)
Run Code Online (Sandbox Code Playgroud)

然后查看了一下:

 summary(urbanbag)

     Var1        Freq      
 No :1   Min.   : 30.0  
 Yes:1   1st Qu.:113.8  
         Median :197.5  
         Mean   :197.5  
         3rd Qu.:281.2  
         Max.   :365.0  
Run Code Online (Sandbox Code Playgroud)

而且输出仍然毫无帮助......实际上更无用。我不是在 R 中构建这些矩阵。它是从 excel 导入的表格。

我花了几天时间试图找出一些看起来如此基本的东西,并在谷歌上搜索帮助,但没有成功,我感到非常失落和沮丧。

有没有办法真正做到这一点?

akr*_*run 6

我们可以用它prop.table来获取比例

v1 <- prop.table(table(urban$vio_bag))
Run Code Online (Sandbox Code Playgroud)

然后用barplot它来绘制它

barplot(v1)
Run Code Online (Sandbox Code Playgroud)