我有 2 个包含 16 列和 146 行的 csv 文件。 我正在尝试执行以下操作(这不是实际数据):
a = [1, 2, 3, 4, 5, 6]
b = [10, 20, 30, 40, 50, 60]
final output of the script intended:
x = [ 11, 22, 33, 22, 22.5, 33] # basically the last half of the array needs to be divided by 2
我试过下面的代码:
import csv
import numpy as np
import sys
data = np.genfromtxt('./test1.csv', dtype=float, delimiter=',')
data_sys = np.genfromtxt('.test2.csv', dtype=float, delimiter=',')
z = np.add (data, data_sys)
np.savetxt("new_before_avg.csv", z, delimiter= ',')
z[:,8:15] = z[:,8:15]/2
np.savetxt("new_after_avg.csv"], z, delimiter= ",")
问题是,除最后一列(第 15 列)外,我看到的最终输出符合预期。只是加起来,没有除以2。
我认为我的索引是正确的。请帮忙。
最佳答案
z[:,8:15]
索引 但不包括 最后一列(第 16 列,索引在 z[:,15]
).
使用 z[:, 8:]
或 z[:,8:16]
关于python numpy数组数据操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30223528/