我在这方面有麻烦。我有以下清单:
listA = [
[
{u'source': u'manual', u'value': 10},
{u'source': u'manual', u'value': 10},
{u'source': u'manual', u'value': 20},
{u'source': u'manual', u'value': 30},
{u'source': u'manual', u'value': 10},
{u'source': u'manual', u'value': 10},
{u'source': u'manual', u'value': 10},
{u'source': u'manual', u'value': 30}
],
[
{u'source': u'manual', u'value': 20},
{u'source': u'manual', u'value': 50},
{u'source': u'manual', u'value': 80},
{u'source': u'manual', u'value': 60},
{u'source': u'manual', u'value': 10},
{u'source': u'manual', u'value': 10},
{u'source': u'manual', u'value': 40},
{u'source': u'manual', u'value': 30}
],
[
{u'source': u'manual', u'value': 60},
{u'source': u'manual', u'value': 20},
{u'source': u'manual', u'value': 40},
{u'source': u'manual', u'value': 30},
{u'source': u'manual', u'value': 20},
{u'source': u'manual', u'value': 10},
{u'source': u'manual', u'value': 50},
{u'source': u'manual', u'value': 10}
]
]我想做的是循环嵌套列表,提取字典值(第一嵌套列表的第一位置,第二嵌套列表的第一位置,第三嵌套列表的第一位置-->第一嵌套列表的第二位置,第二嵌套列表的第二位置,第三嵌套列表的第二位置等等.然后找出'x‘位置值的中值。
谢谢!
发布于 2019-10-07 16:21:02
您可以在zip中使用列表理解
from statistics import median
[median(i['value'] for i in l) for l in zip(*listA)]
# [20, 20, 40, 30, 10, 10, 40, 30]发布于 2019-10-07 16:29:02
如果你想要numpy,你可以使用numpy.median
import numpy as np
result = np.median([[i['value'] for i in l] for l in zip(*listA)], axis=1)
print(result)输出
[20. 20. 40. 30. 10. 10. 40. 30.]https://stackoverflow.com/questions/58273417
复制相似问题