0

我有一个包含 30000 个数据的大型数据集(作为 csv 文件)。数据是这样的:

dataset <- data.frame(person = c(1331688384,910725927,1479941022,1606882065,1877559309),
dahak = c(9,1,4,3,2))

人格达哈克

1331688384, 9

910725927, 1

1479941022, 4

1606882065, 3

1877559309, 2

我必须从 dahak 列表中计算边的权重……如果两个 dahak 数相等,则该边的权重为 1,如果两个 dahak 数不相等,则计算它们的差,权重为 x。

x = 1 - (abs(as.numeric(dahak[j]) - as.numeric(dahak[k])) / 10)

如何创建一个以 personid 作为节点、权重作为边的加权网络?我现在可以通过创建一个矩阵然后使用 python 中的 networkx 库或 R 中的 statnet 库来做到这一点,但是矩阵有 9 亿个条目!我的笔记本电脑无法容纳这个......我正在寻找另一种方式。

4

0 回答 0