R 我的数据表()的计数是1
在R中,如果我有一个数据结构,我的_数据如下:R 我的数据表()的计数是1,r,count,R,Count,在R中,如果我有一个数据结构,我的_数据如下: participant var score ` 1 a ... b ... c ... a ... 2 b ... a ... c ... c ... 3 b ... c ...
participant var score
`
1 a ...
b ...
c ...
a ...
2 b ...
a ...
c ...
c ...
3 b ...
c ...
a ...
b ...
我编写了一个函数来计算var的频率,通过表(my_data$participant,my_data$var),结果是:
a b c
1 1 0 0
2 0 1 0
3 0 1 0
虽然它应该是
a b c
1 2 1 1
2 1 1 2
3 1 2 1
发生这种情况的原因是函数仅选择“参与者”不为空的行。
是否有一种默认方式告诉软件将这些空行关联到同一参与者 您可以使用zoo软件包中的
na.locf
:
# sample data
my_data = data.frame(participant=c("1","","","2","",""),var = c("a","a","b","a","a","c"),stringsAsFactors = F)
library(zoo)
# first, replace empty elements with NA, then use na.locf
my_data$participant[nchar(my_data$participant)==0]=NA
my_data$participant = na.locf(my_data$participant)
table(my_data$participant, my_data$var)
输出:
a b c
1 2 1 0
2 2 0 1
希望这有帮助 请张贴可复制的代码和数据。否则没人能帮上忙。table()一直运行良好,IME。检查某些条目是否为
NA
,如果是,请使用表格(…,useNA='ifany'…)
填写空值。使用zoo::na.locf
或类似工具以最后一次观察替换空白。