我有一个读取csv文件的函数,然后查找特定值的平均值。我想使用此函数读取两个单独的csv文件,然后找到csv文件之间的平均值。我怎么做这个,因为函数不创建变量?你能在循环中做这样的事吗?
我知道最后一行没有任何意义,但这基本上就是我要做的......
import csv
import math
def read_file(file):
with open(file, 'rt') as f:
reader = csv.reader(f, delimiter = ',')
temperatures = []
for row in reader:
if(row[2] == date):
temperatures.append(float(row[3]))
print(sum(temperatures)/len(temperatures))
read_file('temp1.csv')
read_file('temp2.csv')
bay_temp = (read_file('temp1.csv')+ read_file('temp2.csv'))/2
print bay_temp
答案 0 :(得分:1)
您需要返回结果。
变化:
print(sum(temperatures)/len(temperatures))
在:
return sum(temperatures)/len(temperatures)
如果之前的功能有效,它应该给你平均温度。
答案 1 :(得分:0)
您可能只需使用内置的mean()函数并将其存储在变量中。使用Pandas可能是一个很好的情况,因为它可以读取CSV文件并将所需的列或数据提取到数据帧或系列中,然后对数据使用统计函数,例如mean()。这可能不是最好的统计用途,但它是如何使用熊猫的想法:
var newWin;
function printDetails() {
var content = $("#pdf-area").html();
var host = window.location.protocol + "//" + window.location.host;
var cssFiles = [
host + "/Themes/MSD/Styles/template/ma-order-details-2.css",
host + "/Scripts/libraries/zurb-responsive-tables/0.0.0/responsive-tables.css",
host + "/Themes/MSD/Styles/template/checkout-cart-2.css",
host + "/Themes/MSD/Styles/msdtheme.css",
host + "/Themes/MSD/Styles/foundation.css",
host + "/Themes/MSD/Styles/base.css",
host + "/Themes/MSD/Styles/print.css"
];
newWin = window.open();
cssFiles.forEach(function (file) {
newWin.document.write('<link rel="stylesheet" href="' + file + '" type="text/css" />');
});
newWin.document.write("<span class='please-wait'>Please wait...</span>");
newWin.document.write("<div class='ma-order-details-2'>");
newWin.document.write(content);
newWin.document.write("</div>");
newWin.document.close();
newWin.focus();
setTimeout(function () {
newWin.print();
newWin.close();
}, 1000);
}