Python:将单元格中的值除以每一列中的最大值

黑色

这是将表中该列中的最大值除以每列中的每个单元格的有效或正确方法吗?是否有更好的实现方式(如果正确的话)?注意:所有值> = 0

new_data = [];
for row in np.transpose(data)[1::]: #from 1 till end
    for elements in row:
        if sum(elements) != 0:
            new_data.append(elements/max(row));
        else:
            new_data.append(0);
new_data = np.transpose(new_data);

现在:

id col1 col2 col3 col4
A   2    1    4    0
B   3    8    2    0
C   2    3    0    0
D   5    5    3    0
E   6    3    3    0

需要:

id col1 col2 col3 col4
A  1/3  1/8  1     0  
B  1/2  1    1/2   0
C  1/3  3/8  0     0
D  5/6  5/8  3/4   0
E  1    3/8  3/4   0
CT Zhu

你如何处理0像上一栏一样?应该是nan理论上的。sum(elements) != 0,如果它是-2 -1 0 1 2?那应该是-1 -0.5 0 0.5 1,对吗?)

In [138]:

A*1./np.max(A, axis=0)
Out[138]:
array([[ 0.33333333,  0.125     ,  1.        ,         nan],
       [ 0.5       ,  1.        ,  0.5       ,         nan],
       [ 0.33333333,  0.375     ,  0.        ,         nan],
       [ 0.83333333,  0.625     ,  0.75      ,         nan],
       [ 1.        ,  0.375     ,  0.75      ,         nan]])

我们可以保留最后一列。

In [141]:

np.where(np.max(A, axis=0)==0, A, A*1./np.max(A, axis=0))
Out[141]:
array([[ 0.33333333,  0.125     ,  1.        ,  0.        ],
       [ 0.5       ,  1.        ,  0.5       ,  0.        ],
       [ 0.33333333,  0.375     ,  0.        ,  0.        ],
       [ 0.83333333,  0.625     ,  0.75      ,  0.        ],
       [ 1.        ,  0.375     ,  0.75      ,  0.        ]])

循环的正确方法是:

for row in A.T:
    if max(row)>0:
        new_data.append([item*1./max(row) for item in row])
    else:
        new_data.append(row)

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R将数据框中的每一列除以最后一行的值

来自分类Dev

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

来自分类Dev

查找最大值并标识另一列的名称单元格

来自分类Dev

如何对Google Spreadsheets中每一列的最大值求和?

来自分类Dev

从mysql单元中除以最大值

来自分类Dev

根据Google表格中其他列的最大值返回单元格内容

来自分类Dev

Python Pandas:在单元格中查找最大值

来自分类Dev

r中数据帧不同行的每一列的最大值

来自分类Dev

复制CSV的每一列并根据python中的条件更改每个列单元格的值

来自分类Dev

从Java的每一列中获取最大值?

来自分类Dev

使用一组数据框中的每一列的每个单元格创建最大值的新数据框

来自分类Dev

如果该值大于上一列中单元格的值,则突出显示该单元格

来自分类Dev

如何用一列的最大值与另一列的最小值之间的差异将一列中的df按Python分组?

来自分类Dev

R将数据框中的每一列除以最后一行的值

来自分类Dev

难以找到二维数组中每一列的最大值

来自分类Dev

Python:将单元格中的值除以每一列中的最大值

来自分类Dev

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

来自分类Dev

查找最大值并为另一列标识名称的单元格

来自分类Dev

如何对Google Spreadsheets中每一列的最大值求和?

来自分类Dev

R取单元格的最大值,列中的每个元素取0

来自分类Dev

根据列“ A”中的单元格条件,将一列单元格值“ C”组合为单个单元格

来自分类Dev

根据R中另一列中的值重置单元格值

来自分类Dev

如何在另一列中找到一个单元格的最大值?

来自分类Dev

将行名列名和最大值的单元格存储在矩阵诊断中

来自分类Dev

列的总和,如果该列的单元格中的值是行中的最大值?

来自分类Dev

根据另一列的相应值替换一列中的空单元格?

来自分类Dev

如何使用python从xlsx文件中的另一列中减去一列中的单元格值

来自分类Dev

如何根据python中另一列中的值移动单元格?

来自分类Dev

在 Python 中查找 Pandas 的每个单元格中的最大值/最小值

Related 相关文章

  1. 1

    R将数据框中的每一列除以最后一行的值

  2. 2

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

  3. 3

    查找最大值并标识另一列的名称单元格

  4. 4

    如何对Google Spreadsheets中每一列的最大值求和?

  5. 5

    从mysql单元中除以最大值

  6. 6

    根据Google表格中其他列的最大值返回单元格内容

  7. 7

    Python Pandas:在单元格中查找最大值

  8. 8

    r中数据帧不同行的每一列的最大值

  9. 9

    复制CSV的每一列并根据python中的条件更改每个列单元格的值

  10. 10

    从Java的每一列中获取最大值?

  11. 11

    使用一组数据框中的每一列的每个单元格创建最大值的新数据框

  12. 12

    如果该值大于上一列中单元格的值,则突出显示该单元格

  13. 13

    如何用一列的最大值与另一列的最小值之间的差异将一列中的df按Python分组?

  14. 14

    R将数据框中的每一列除以最后一行的值

  15. 15

    难以找到二维数组中每一列的最大值

  16. 16

    Python:将单元格中的值除以每一列中的最大值

  17. 17

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

  18. 18

    查找最大值并为另一列标识名称的单元格

  19. 19

    如何对Google Spreadsheets中每一列的最大值求和?

  20. 20

    R取单元格的最大值,列中的每个元素取0

  21. 21

    根据列“ A”中的单元格条件,将一列单元格值“ C”组合为单个单元格

  22. 22

    根据R中另一列中的值重置单元格值

  23. 23

    如何在另一列中找到一个单元格的最大值?

  24. 24

    将行名列名和最大值的单元格存储在矩阵诊断中

  25. 25

    列的总和,如果该列的单元格中的值是行中的最大值?

  26. 26

    根据另一列的相应值替换一列中的空单元格?

  27. 27

    如何使用python从xlsx文件中的另一列中减去一列中的单元格值

  28. 28

    如何根据python中另一列中的值移动单元格?

  29. 29

    在 Python 中查找 Pandas 的每个单元格中的最大值/最小值

热门标签

归档