gpt4 book ai didi

python - 在 python 中处理大尺寸数组

转载 作者:太空宇宙 更新时间:2023-11-03 11:05:56 24 4
gpt4 key购买 nike

我有下面列出的三个数组:

  1. users — 包含 50000 个用户的 ID(全部不同)
  2. pusers — 包含拥有一些帖子的用户的 ID(也包含重复的 ID,也就是说,一个用户可以拥有许多帖子)[50000 个值]
  3. score — 包含 pusers 中每个值对应的分数。[50000 个值]

现在我想根据以下计算填充另一个数组 PScore。对于 pusersusers 的每个值,我需要获取相应的 score 并将其添加到 PScore 数组在对应于 user 的索引中。

例子,

if users[5] = 23224
and pusers[6] = pusers[97] = 23224
then PScore[5] += score[6]+score[97]

注意事项:

  • scorepusers 相关(例如,pusers[5]score[5])
  • PScore 预计与 users 相关(例如,users[5] 的累积分数为 Pscore[5] )
  • 最终目标是为帖子的拥有者分配累积分数。
  • 不拥有任何帖子的用户的分数为 0。

谁能帮我做这件事?我尝试了很多次,但一旦我运行了不同的试验,输出屏幕将保持空白,直到我 Ctrl+Z 退出。

我浏览了以下所有帖子,但无法将它们有效地用于我的场景。

我是这个论坛的新手,也是 Python 的初学者。任何帮助都会对我非常有用。

附加信息

  • 我正在使用 StackOverflow 数据开展一个小项目。
  • 我正在使用 Orange 工具,并且正在学习该工具和 Python。

好的,我知道我的方法有问题。那么我不应该在这种情况下使用列表吗?谁能告诉我应该如何处理这个问题?

我得到的数据示例如下所示。

PUsers  Score
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
-1 0
13 0
77 1
77 4
77 3
77 0
77 2
77 2
77 3
102 2
105 0
108 2
108 2
117 2

Users
-1
1
2
3
4
5
8
9
10
11
13
16
17
19
20
22
23
24
25
26
27
29
30
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
48
49
50

我想要的只是与每个用户关联的总分。再一次,pusers 列表包含重复,而 users 列表包含唯一值。我需要以这样一种方式存储与每个用户关联的总分,如果我说 PScore[6],它应该指的是与 User[6] 关联的总分>.

希望我回答了这些问题。

提前致谢。

最佳答案

从您描述数组的方式来看,并且由于您使用的是 Python,这看起来非常适合字典。

您应该能够创建一个将用户 ID 映射到分数的字典,而不是让一个数组用于帖子所有者,另一个数组用于帖子分数。当您接收数据时,查看字典以查看该用户是否已经存在。如果是这样,将分数添加到当前分数。如果没有,请创建一个新条目。遍历所有数据后,您应该有一个字典,将用户 ID 映射到总分。

http://docs.python.org/2/tutorial/datastructures.html#dictionaries

关于python - 在 python 中处理大尺寸数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19769349/

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