gpt4 book ai didi

r - 如何获取频率然后将其作为变量添加到数组中?

转载 作者:行者123 更新时间:2023-12-02 17:23:24 24 4
gpt4 key购买 nike

假设我有一个这种格式的数组

X  Y  Z
A 1 0
A 2 1
B 1 1
B 2 1
B 1 0

我想找到给定X的X的频率和Y的频率,然后将它们添加到数组中

X  Y  Z  F(x)  F(Y|X)
A 1 0 2 1
A 2 1 2 1
B 1 1 3 2
B 2 1 3 1
B 1 0 3 2

最佳答案

这是一个data.table方式:

require(data.table)
DT <- data.table(dat)
DT[,nx:=.N,by=X][,nxy:=.N,by=list(X,Y)]

最后一步创建了两列:

DT
# X Y Z nx nxy
# 1: A 1 0 2 1
# 2: A 2 1 2 1
# 3: B 1 1 3 2
# 4: B 2 1 3 1
# 5: B 1 0 3 2

它可以写成两行而不是一行:

DT[,nx:=.N,by=X]
DT[,nxy:=.N,by=list(X,Y)]

关于r - 如何获取频率然后将其作为变量添加到数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18860355/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com