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

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 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)