熊猫:按值将单元格值分组到单独的列中

埃斯特·布莱克

我有一个带有多个偏移量列的pandas DataFrame:

        0       1       2       3        4         5          6
0  532201  577834  577837  839786  1003273       NaN        NaN
1  577834  577837  649835  839786  1003273       NaN        NaN
2  577834  577837  649835  839786  1003273       NaN        NaN
3  577834  577837  649839  649845   839785  839786.0  1003273.0
4  577834  577837  649839  839786  1003273       NaN        NaN
5  577834  577837  649839  839786  1003273       NaN        NaN
6  577834  577837  649839  839786  1003273       NaN        NaN

在缺失的位置插入NaN,-1或其他值时,是否可以通过单元格的值对列进行有效的分组/排序?

输出:

        0       1       2       3       4       5       6       7        8
0  532201  577834  577837     NaN     NaN     NaN     NaN  839786  1003273
1     NaN  577834  577837  649835     NaN     NaN     NaN  839786  1003273
2     NaN  577834  577837  649835     NaN     NaN     NaN  839786  1003273
3     NaN  577834  577837     NaN  649839  649845  839785  839786  1003273
4     NaN  577834  577837     NaN  649839     NaN     NaN  839786  1003273
5     NaN  577834  577837     NaN  649839     NaN     NaN  839786  1003273
6     NaN  577834  577837     NaN  649839     NaN     NaN  839786  1003273

列不需要以任何特定的方式进行排序,我只是想为上述每个值创建时间线图。

例如

.
.
.
649839       ======== 
577837  ================================
577834  ================================
532201  ===
         0    1    2    3    4    5    6
洛兹

您可以使用假人。stack,创建虚拟变量,并用于max在行中任何位置创建存在指标。

df1 = pd.get_dummies(df.stack().astype('int64')).max(level=0)

   532201   577834   577837   649835   649839   649845   839785   839786   1003273
0        1        1        1        0        0        0        0        1        1
1        0        1        1        1        0        0        0        1        1
2        0        1        1        1        0        0        0        1        1
3        0        1        1        0        1        1        1        1        1
4        0        1        1        0        1        0        0        1        1
5        0        1        1        0        1        0        0        1        1
6        0        1        1        0        1        0        0        1        1

如果要创建类似该图的内容,可以为每个列将虚拟变量乘以不同的常量(因此,它们在绘制时会偏移),将0替换为NaN,然后针对DataFrame的RangeIndex进行绘制。您可以使用图例来标记线条,也可以使用yticks和标签,因此列标签在y轴上。

import matplotlib.pyplot as plt
import numpy as np

fig, ax = plt.subplots(figsize=(4, 4))

(df1.mul(np.arange(1, df1.shape[1]+1)).replace(0, np.NaN)
    .plot(ax=ax, marker='o', legend=False))

plt.yticks(np.arange(1, df1.shape[1]+1, 1))
ax.set_yticklabels(df1.columns)
plt.show()

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据另一列的值将矩阵的一列元素分组到单元格数组中

来自分类Dev

根据另一列的值将矩阵的一列元素分组到单元格数组中

来自分类Dev

如何加入按第二列中的值分组的多个单元格

来自分类Dev

将单元格设置为等于熊猫中的值

来自分类Dev

将熊猫中的单元格值替换为元组

来自分类Dev

将列中的单元格值与行中的单元格值相交?

来自分类Dev

熊猫-根据单元格和列中的条件更改单元格值

来自分类Dev

熊猫-根据单元格和列中的条件更改单元格值

来自分类Dev

单元格模式值到列

来自分类Dev

Datagrid:将字符串值发布到DateTime列的单元格中

来自分类Dev

当单元格包含值时将列名收集到单个列中

来自分类Dev

将单元格中的多个值转换为列

来自分类Dev

熊猫按列中的每个值分组

来自分类Dev

VBA脚本将列中的单元格值复制到另一列中给出的单元格地址

来自分类Dev

如何将一列中的每个单元格与熊猫中的特定值进行比较?

来自分类Dev

熊猫-使用搜索按每个单元格中的字符串值进行修改

来自分类Dev

Excel计算同一单元格中的单独值

来自分类Dev

熊猫-根据不同列中的空白单元格将文本输入到列中

来自分类Dev

熊猫根据行中其他单元格的值向单元格分配值

来自分类Dev

如果工作表中的 3 列值相同,如何将单元格内容从多行复制到一个单元格中?

来自分类Dev

熊猫将单元格值增加 0.1

来自分类Dev

将值从工作表中的单元格复制到一系列单元格中

来自分类Dev

替换熊猫中单元格中的多个值

来自分类Dev

大熊猫:使用来自单独数据框中一个单元格的值填充数据框列中的所有行

来自分类Dev

将单元格中的单词移动到单独的列

来自分类Dev

熊猫:根据另一列中的条件更改该列的先前单元格值

来自分类Dev

根据其他匹配的单元格将值复制到一个单元格中

来自分类Dev

使用循环将一个单元格的值复制到多个单元格中

来自分类Dev

字典项=每个分组的列最后一行中的单元格值

Related 相关文章

  1. 1

    根据另一列的值将矩阵的一列元素分组到单元格数组中

  2. 2

    根据另一列的值将矩阵的一列元素分组到单元格数组中

  3. 3

    如何加入按第二列中的值分组的多个单元格

  4. 4

    将单元格设置为等于熊猫中的值

  5. 5

    将熊猫中的单元格值替换为元组

  6. 6

    将列中的单元格值与行中的单元格值相交?

  7. 7

    熊猫-根据单元格和列中的条件更改单元格值

  8. 8

    熊猫-根据单元格和列中的条件更改单元格值

  9. 9

    单元格模式值到列

  10. 10

    Datagrid:将字符串值发布到DateTime列的单元格中

  11. 11

    当单元格包含值时将列名收集到单个列中

  12. 12

    将单元格中的多个值转换为列

  13. 13

    熊猫按列中的每个值分组

  14. 14

    VBA脚本将列中的单元格值复制到另一列中给出的单元格地址

  15. 15

    如何将一列中的每个单元格与熊猫中的特定值进行比较?

  16. 16

    熊猫-使用搜索按每个单元格中的字符串值进行修改

  17. 17

    Excel计算同一单元格中的单独值

  18. 18

    熊猫-根据不同列中的空白单元格将文本输入到列中

  19. 19

    熊猫根据行中其他单元格的值向单元格分配值

  20. 20

    如果工作表中的 3 列值相同,如何将单元格内容从多行复制到一个单元格中?

  21. 21

    熊猫将单元格值增加 0.1

  22. 22

    将值从工作表中的单元格复制到一系列单元格中

  23. 23

    替换熊猫中单元格中的多个值

  24. 24

    大熊猫:使用来自单独数据框中一个单元格的值填充数据框列中的所有行

  25. 25

    将单元格中的单词移动到单独的列

  26. 26

    熊猫:根据另一列中的条件更改该列的先前单元格值

  27. 27

    根据其他匹配的单元格将值复制到一个单元格中

  28. 28

    使用循环将一个单元格的值复制到多个单元格中

  29. 29

    字典项=每个分组的列最后一行中的单元格值

热门标签

归档