R 计算列中指定值的更好方法?

R 计算列中指定值的更好方法?,r,count,R,Count,我对R(R studio用户)很陌生,但越来越热情 我在R(R studio)中导入了一个Excel文件。没问题。包含29列14.000行的大文件。 一列只包含两个可能的值:S或E 我所做的(在尝试了许多其他编码之后)是:我从数据集中取出了列: kolom <- data1$spoedelectief # this worked wel. Pretty long view...: > View(kolom) #then I wrote this. Worked good as wel

我对R(R studio用户)很陌生,但越来越热情

我在R(R studio)中导入了一个Excel文件。没问题。包含29列14.000行的大文件。 一列只包含两个可能的值:S或E

我所做的(在尝试了许多其他编码之后)是:我从数据集中取出了列:

kolom <- data1$spoedelectief
# this worked wel. Pretty long view...:
> View(kolom)
#then I wrote this. Worked good as well. 
> length(which(kolom == "S"))
[1] 1999
#and the same code counted the amount of E as well.
> length(which(kolom == "E"))
[1] 11322
kolom视图(kolom)
#然后我写了这个。效果也不错。
>长度(其中(kolom==“S”))
[1] 1999
#同样的代码也计算了E的数量。
>长度(其中(kolom==“E”))
[1] 11322
我找到了一些示例,展示了如何计算列/数据集中的NA。找到了一些其他编码,但似乎没有任何效果(或者是我…)。 我的问题是:所示代码有效。但我想有一种方法可以直接在我的29列和所有这些行的数据框中计数


数据帧名称为data1。列:spoedelectief。我可以使用什么代码直接计算该列上的E或S?

我们可以直接使用
sum

sum(kolom == "E", na.rm = TRUE)
或者,如果该列中只有两个唯一的元素,
table
也可以用于获取两个元素的频率计数

table(kolom)

要重复应用此功能,可以创建一个函数

f1 <- function(vec, value){
        sum(vec == value, na.rm = TRUE)
  }
f1(kolom, "E")
f1(kolom, "S")

f1非常感谢,这非常有效!你好,简