我有一个字典,而值是字符串类型。但我想计算每个键的平均值,而空字符串是一个缺失值。这里是我的代码只需要一个小的twerk就可以了......有错误:int()参数必须是字符串或数字,而不是'list'
dic = {'E': ['1', '', '3'], 'M': ['2', '', '1']}
for k,n in dic.items():
k = [0]
n = [1]
D = {k: (int(n)) for k, n in dic.items() if n}
ave = {k:sum(D)/float(len(D))} if D else '-'
print ave
预期产量: {'E':2,'M':1.5}
答案 0 :(得分:0)
dic = {'E': ['1', '', '3'], 'M': ['2', '', '1']}
ave = dict()
for k in dic:
nonempty = [ float(v) for v in dic[k] if v != '' ]
ave[k] = sum(nonempty) / len(nonempty)
print ave