我正在使用 Python 2.7 (Anaconda) 来处理表格数据。我加载了一个包含两列的文本文件,例如
[[ 1. 8.]
[ 2. 4.]
[ 3. 1.]
[ 4. 5.]
[ 5. 6.]
[ 1. 9.]
[ 2. 0.]
[ 3. 7.]
[ 4. 3.]
[ 5. 2.]]
Run Code Online (Sandbox Code Playgroud)
我的目标是计算第二列中与第一列中唯一值匹配的所有值的平均值,例如,1 的平均值为 8.5,2 的平均值为 2,3 的平均值为 4。首先,我通过提取列并应用 np.unique() 导致数组“唯一”过滤掉了第一列中的唯一值。我创建了一个在定义唯一值时起作用的循环:
mean= 0
values=[]
for i in range(0,len(first),1):
if first[i]==1:
values.append(second[i])
print(np.mean(values))
Run Code Online (Sandbox Code Playgroud)
其中第一和第二是特定的列。现在我想让这不那么具体。我试过
mean = 0
values = []
means=[]
for i in unique:
for k in range(0,len(first),1):
if first[k]==i:
values.append(second[k])
mean = np.mean(values)
means.append(mean)
mean=0
values=[] …Run Code Online (Sandbox Code Playgroud)