【问题标题】:For each unique user id create a vector of histogram frequencies R对于每个唯一的用户 id,创建一个直方图频率向量 R
【发布时间】:2020-11-03 19:45:12
【问题描述】:

我有 608 个唯一用户 ID,总共有约 58,000 个事件。

User.ID      state of charge
1000749          47.08
998235V          93.00
...              ...

我正在尝试为每个 id 创建一个向量,其中包括它们的 histogram$counts

<Input> {r for each user id create a vector }
list.ids=list()
#stchrg=SOCData$SOC
for (i in unique(SOCData$User.ID)){
  list.ids[[i]]=(hist(SOCData$SOC)$counts/sum(hist(SOCData$SOC)$count))*100
}
View(list.ids)
length(list.ids)
#the length is right it returns 608 which is correct
<Output>
list of each id=c(frequencies for 10 breaks)

现在,我为所有需要调整的 id 和 Idk 获得相同的频率值!

稍后,我想将所有数组放在一起以计算距离,或者将它们全部放在一个矩阵中。如果您推荐任何更好的方法来获得这样的最终结果,我感谢您的建议。

【问题讨论】:

    标签: r matrix vector cluster-analysis


    【解决方案1】:

    注意!可能 bin 最终对于不同的用户来说是不统一和平等的,所以我定义了我的 bin,然后在我的 hist() 中实现

    bins=c(0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100)
    list.ids = list()
    for (i in unique(SOCData$User.ID)) {
    list.ids[[as.character(i)]] =as.vector(hist(SOCData[SOCData$User.ID == i, 'SOC'], breaks=bins)$counts / sum(hist(SOCData[SOCData$User.ID == i, 'SOC'], breaks =bins)$count) * 100)
    }
    

    【讨论】:

      猜你喜欢
      • 2019-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-05
      • 1970-01-01
      相关资源
      最近更新 更多