【发布时间】:2016-10-15 23:03:52
【问题描述】:
相关问题: How to create dummy variable columns for thousands of categories in Google BigQuery
我有一个加权边列表表,它是一个用户项目评分列表,它看起来像这样:
| userId | itemId | rating
| 001 | 001 | 5.0
| 001 | 002 | 4.0
| 002 | 001 | 4.5
| 002 | 002 | 3.0
我想把这个加权边列表转换成邻接矩阵:
| userId | item001 | item002
| 001 | 5.0 | 4.0
| 002 | 4.5 | 3.0
根据this post,我们可以分两步完成,第一步是提取矩阵条目的值以生成查询,第二步是运行从第一步生成的查询。
但我的问题是如何提取评级值并在IF() 语句中使用评级值?我的直觉是在IF() 语句中放置一个嵌套查询,例如:
IF(itemId = blah,
(select rating
from mytable
where
userId = blahblah
and itemId = blah),
0)
但是这个查询看起来太贵了,谁能给我一个例子?
谢谢
【问题讨论】:
标签: matrix google-bigquery transpose