穆穆青风至 2022-09-15 18:56 采纳率: 97.4%
浏览 29
已结题

pandas 中zip的使用

最后一行代码啥意思,zip里面,users_ratings.index不是就一维吗,后面np.random.rand(len(users_ratings),10).astype(np.float32) 应该是二维,调用zip发生了啥,然后外面再套一层就是把这个转换为字典是吧?主要是调用zip时发生了啥,我以前用zip函数都是同样的维度

dtype=[('userId',np.int32),('movieId',np.int32),('rating',np.float32)]
dataset=pd.read_csv(DATA_PATH,usecols=range(3),dtype=dtype) # 读取csv文件
users_ratings=dataset.groupby('userId').agg([list])
P = dict(zip(users_ratings.index,np.random.rand(len(users_ratings),10).astype(np.float32)
        ))

print(users_ratings),对于users_ratings输出如下

img

csv文件数据如下

img

  • 写回答

1条回答 默认 最新

  • Elwin Wong 2022-09-21 08:57
    关注

    其实是同样的原理,zip会把可迭代对象对应位置的元素组合成一个元组,你这里的zip里面第二个参数虽然是二维的,但也可以看作是一维数组的数组,每个元素是一个一维数组,这样子应该就好理解了吧。zip把第一个可迭代对象的值和第二个可迭代对象对应位置的一维数组组合成元组,结果是一个元组列表,再传递给dict,生成一个字典,字典的key为元组第一个元素,其value为相应元组的第二个元素

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月19日
  • 已采纳回答 10月11日
  • 修改了问题 9月15日
  • 创建了问题 9月15日

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里