Python 计算numpy数组的月平均值?
我有两个csv文件,每天的数据跨度为1950-1990年,列如下所示: 文件1:Python 计算numpy数组的月平均值?,python,csv,numpy,Python,Csv,Numpy,我有两个csv文件,每天的数据跨度为1950-1990年,列如下所示: 文件1: year month day value 1950 2 27 1.693 1950 2 28 0 1950 3 1 0.016 1950 3 2 0.067 文件2: 1950 2 27 0 1950 2 28 0.08 1950 3 1 0.05 1950 3 2 0 我想
year month day value
1950 2 27 1.693
1950 2 28 0
1950 3 1 0.016
1950 3 2 0.067
文件2:
1950 2 27 0
1950 2 28 0.08
1950 3 1 0.05
1950 3 2 0
我想在两个文件中取第4列的月平均值。如果文件1中的月平均值低于0.01,则写入两个新数组(月平均值>0.01和<0.01的日值)。另外,使用新创建数组的索引创建两个新的file2数组。我尝试使用以下方法,而不是每月平均返回数组的最后一个每日值:
import numpy as np
import csv
time = [] ; f1 = [] ; f2 = []
with open('file1.csv','rb') as csvfile:
reader=csv.reader(csvfile)
for row in reader:
time.append(row[1])
f1.append(row[3])
with open('file2.csv','rb') as csvfile:
reader=csv.reader(csvfile)
for row in reader:
f2.append(row[3])
f1_arr = np.array(f1)
f2_arr = np.array(f2)
x = f1_arr.astype(np.float) # convert string to float
y = f2_arr.astype(np.float)
for ii in xrange(len(time)):
if ii == ii:
monthly_mean = np.mean(x[ii])
请建议如何修复它和分离数组。如果您想要第四列的平均值,它不应该是f1\u arr中ii的
吗?我认为在中为循环设置时间维度,并有条件地(如果是同一个月)取特定月份的平均值