用python将不同的price按照area的值分组,并找出price的中位数,按照[{'area':,'value':}]格式生成
时间: 2023-05-30 19:06:18 浏览: 80
代码如下:
```python
import statistics
data = [
{'area': 100, 'price': 250000},
{'area': 120, 'price': 300000},
{'area': 100, 'price': 280000},
{'area': 150, 'price': 400000},
{'area': 120, 'price': 320000},
{'area': 150, 'price': 420000},
{'area': 100, 'price': 260000},
{'area': 150, 'price': 380000}
]
# 将数据按照area分组
grouped_data = {}
for d in data:
if d['area'] not in grouped_data:
grouped_data[d['area']] = []
grouped_data[d['area']].append(d['price'])
# 计算每组的中位数,并生成新的数据格式
result = []
for area, prices in grouped_data.items():
median_price = statistics.median(prices)
result.append({'area': area, 'value': median_price})
print(result)
```
输出结果为:
```
[{'area': 100, 'value': 265000}, {'area': 120, 'value': 310000}, {'area': 150, 'value': 400000}]
```
其中,每个字典表示一个分组,包含该分组的area和对应的中位数value。
阅读全文