gpt4 book ai didi

python - 将数据帧转换为 numpy 矩阵

转载 作者:太空宇宙 更新时间:2023-11-04 00:43:12 26 4
gpt4 key购买 nike

我有表格的数据框

user_id  item_id  rating
1 abc 5
1 abcd 3
2 abc 3
2 fgh 5

我想把它转换成一个像这样的numpy矩阵

# abc  abcd  fgh
[[5, 3, 0] # user_id 1
[3, 0, 5]] # user_id 2

有人能帮忙吗?

最佳答案

您可以使用 pivotfillna ,转换为 int 并最后通过 values 转换为数组:

arr = df.pivot('user_id', 'item_id', 'rating').fillna(0).astype(int).values
print (arr)
[[5 3 0]
[3 0 5]]

另一种解决方案 set_index , unstackvalues :

arr = df.set_index(['user_id','item_id']).unstack(fill_value=0).values
print (arr)
[[5 3 0]
[3 0 5]]

关于python - 将数据帧转换为 numpy 矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40918424/

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