我无法用另一列的总和来创建一个新列。
如果您像我一样不熟悉Python,则很难理解Orange文档。

这是我的Python脚本小部件中的代码

import numpy as np

## make a copy from the data that widget recieves
out_data = in_data.copy()

## compute cumulative sum of column values
newCumsumColValues = np.cumsum(out_data[:,('myCumsumcolTarget')])

## i got the values
print(newCumsumColValuesl)

## i need to create a new column with the values in out_data
## i've tried to update column values first to test

## with an static value column values updated to 8
out_data[:,'myCumsumcolTarget'] = 8

## with newCumsumColValue is NOT working
out_data[:,'myCumsumcolTarget'] = newCumsumColValues


这些示例对我来说很难理解:

https://docs.orange.biolab.si/3/visual-programming/widgets/data/pythonscript.html
https://docs.orange.biolab.si/3/data-mining-library/tutorial/data.html#exploration-of-the-data-domain

提前致谢,
文斯。

最佳答案

尝试:

out_data.X[:, i] = newCumsumColValues


i在哪里

out_data.domain.index(out_data.domain['myCumsumcolTarget'])


这段代码有点复杂,但是可以用。

关于python - 使用Orange中的Python脚本小部件创建cumsum列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46565246/

10-12 23:12