R 分配'';基于正态分布的数值

R 分配'';基于正态分布的数值,r,R,我有一个数据集,有超过400000个观察值。一个变量有许多“?”值。其因子表如下所示 ? AA BB CC DD EE FF GG HH 17082 247 1813 96 72 12529 49732 382188 9 我不想删除所有的“?”值,而是希望基于正态分布将“?”值分为其他因子。例如,虽然“GG”因子应接收到“?”值的大部分,因为它具有最大的因子,“HH”应

我有一个数据集,有超过400000个观察值。一个变量有许多“?”值。其因子表如下所示

 ?       AA     BB     CC     DD    EE       FF      GG        HH
17082    247   1813    96     72    12529    49732   382188    9
我不想删除所有的“?”值,而是希望基于正态分布将“?”值分为其他因子。例如,虽然“GG”因子应接收到“?”值的大部分,因为它具有最大的因子,“HH”应接收到“?”值的最小部分。我想不出用R怎么做


我想根据正态分布分配17082'?'值,然后分配相应的因子。

您可以使用
示例
如下:

set.seed(42)
table(sample(factor(c("AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH")), 17082, TRUE, prob=c(247, 1813, 96, 72, 12529, 49732, 382188, 9)))
#   AA    BB    CC    DD    EE    FF    GG    HH
#   15    71     4     2   482  1884 14624     0
或者使用真实数据集:

#Create your dataset
x <- factor(c("?", "AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH"))
x <- rep(x, c(17082, 247, 1813, 96, 72, 12529, 49732, 382188, 9))

tt  <- table(x)
set.seed(42)
x[x=="?"]  <- sample(levels(x)[-1], tt[1], TRUE, prob=tt[-1])
table(x)
#     ?     AA     BB     CC     DD     EE     FF     GG     HH 
#     0    262   1884    100     74  13011  51616 396812      9 
#创建您的数据集

x您可以使用
示例
如:

set.seed(42)
table(sample(factor(c("AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH")), 17082, TRUE, prob=c(247, 1813, 96, 72, 12529, 49732, 382188, 9)))
#   AA    BB    CC    DD    EE    FF    GG    HH
#   15    71     4     2   482  1884 14624     0
或者使用真实数据集:

#Create your dataset
x <- factor(c("?", "AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH"))
x <- rep(x, c(17082, 247, 1813, 96, 72, 12529, 49732, 382188, 9))

tt  <- table(x)
set.seed(42)
x[x=="?"]  <- sample(levels(x)[-1], tt[1], TRUE, prob=tt[-1])
table(x)
#     ?     AA     BB     CC     DD     EE     FF     GG     HH 
#     0    262   1884    100     74  13011  51616 396812      9 
#创建您的数据集

x如果我理解正确,您希望将所有
值按其显示的比例分配给其他值。如果是这样,只需创建不带
值的
属性表
,并将其重新缩放到总数的大小(可能是
圆形
,以便更好地测量)


x如果我理解正确,您希望将所有
值按其显示的比例分配给其他值。如果是这样,只需创建不带
值的
属性表
,并将其重新缩放到总数的大小(可能是
圆形
,以便更好地测量)


x我不明白你为什么要把正态分布带到这里来?@Dason也许OP意味着对数据进行正态化,我不能平均分配“?”值,因为所有其他因素都有不同的计数。我认为在这种情况下,“GG”应该比“HH”因子接收更多的“?”值。除了正态分布之外,我想不出任何其他的想法。有什么建议吗?如果这只是众多变量中的一个(或几个),我会研究多重插补。我不明白你为什么要将正态分布引入其中?@Dason也许OP意味着将数据标准化,我不能平均分配“?”值,因为所有其他因素都有不同的计数。我认为在这种情况下,“GG”应该比“HH”因子接收更多的“?”值。除了正态分布之外,我想不出任何其他的想法。有什么建议吗?如果这只是众多变量中的一个(或几个),我会研究多重插补。