python-3.x - 使用 Pandas 从数据框中获取同名行列表

标签 python-3.x pandas

正在寻找一种获取部分行列表的方法。

Name    x   y   r
  a     9   81  63
  a     98  5   89
  b     51  50  73
  b     41  22  14
  c     6   18  1
  c     1   93  55
  d     57  2   90
  d     58  24  20

所以我试图按如下方式获取字典,
di = {a:{0: [9,81,63], 1: [98,5,89]},
    b:{0:[51,50,73], 1:[41,22,14]},
    c:{0:[6,18,1], 1:[1,93,55]},
    d:{0:[57,2,90], 1:[58,24,20]}}

最佳答案

有时最好尽量减少占用空间和开销。
使用 itertools.count , collections.defaultdict

from itertools import count
from collections import defaultdict

counts = {k: count(0) for k in df.Name.unique()}
d = defaultdict(dict)

for k, *v in df.values.tolist():
    d[k][next(counts[k])] = v

dict(d)

{'a': {0: [9, 81, 63], 1: [98, 5, 89]},
 'b': {0: [51, 50, 73], 1: [41, 22, 14]},
 'c': {0: [6, 18, 1], 1: [1, 93, 55]},
 'd': {0: [57, 2, 90], 1: [58, 24, 20]}}

关于python-3.x - 使用 Pandas 从数据框中获取同名行列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47429910/

相关文章:

Python 3 : Convert String to variable

python-3.x - 标准化 Pandas 数据框但跳过几列

python - 如何使用 pandas groupby 对某些行进行降序排序,对某些行进行升序排序

python - 在 Pandas 系列中制作缺失的时隙并填充 0 值

python - 生成源后使用 graphviz 更改特定节点的颜色

python - 在 Windows 中设置项目的相对 pythonpath (Visual Studio Code)

python-3.x - 如何使用 postman 发送发布请求,同时保存到 Mongo 数据库?

python - n维表查找: array,数据帧,还是字典?

python-3.x - 导入错误 : No module named 'requests' Python 3. 4.0

python - 如何绘制每年前 n 个类别的条形图