python - 使用 python Pandas 进行数据重排 | 基于重复索引创建列并填充列值
问题描述
将 python csv 数据重新排列成行和不同的列我有 csv 数据库,其中包含以下格式的名称和朋友列表
预期输出如下: 名称和值在一行中,重复列的数量根据名称重复。
执行此输出的最佳方法是什么?
解决方案
您还可以使用 groupby 并创建一个新的数据框from_dict
:
new_dict = (df.groupby('Name')
.apply(lambda x: list(map(lambda x: x, x['Value'])))
.to_dict())
new_df = pd.DataFrame.from_dict(new_dict, orient='index')
这会给你:
0 1 2
Ajay C529 C530 None
Djna A-506 A-507 A-508
Patc2 B-526 B-527 B-528
推荐阅读
- php - 无法将我的登录页面重定向到主页
- android - 底部的 ScrollView 和 SwitchPreferences 会导致行为不稳定。为什么每当我切换 SwitchePreference 时列表会向上滚动?
- angularjs - 通过复选框检查多选问题的答案以显示正确答案
- git - 覆盖所有未提交的本地文件
- android - 如何解决 Android Studio 中的渲染问题?
- python - 使用单行从字符串python中过滤掉数字
- wordpress - 保持所有 WordPress 环境同步
- node.js - Electron --serve 因缺少 package.json 而失败
- javascript - 如何在 VScode 中显示导入的函数签名/jsdoc?
- java - Maven:“NoClassDefFoundError:com/jogamp/newt/event/KeyListener”