DpythonProject3会员信息附件二:会员信息数据xlsx其中文件中‘商品GPS纬度’和‘商品GPS经度’两列的数据组成商品的位置信息文件中‘会员编号’是会员的编号文件中‘会员GPS纬度’和‘会员GPS经度’两列数据组成会员的位置信息利用位置信息通过欧氏距离算距离r距离用会员和商品的纬度之差的平方加上会员和商品经度之差的平方再开方且只保留r01的数据同时统计该会员周围商品的数量商品根据相对
import pandas as pd import math
读取Excel文件
data = pd.read_excel(r"D:\pythonProject3\会员信息\附件二:会员信息数据.xlsx")
计算距离r并筛选满足条件的数据
data['距离'] = ((data['会员GPS纬度'] - data['商品GPS纬度'])**2 + (data['会员GPS经度'] - data['商品GPS经度'])**2)**0.5 data = data[data['距离'] < 0.1]
统计每个会员周围商品的数量
count = data.groupby('会员编号')['任务号码'].count().reset_index() count.columns = ['会员编号', '商品数量']
根据排序和预订任务限额筛选商品
data = data.sort_values(by=['会员编号', '距离']) data = data.groupby('会员编号').head(data['预订任务限额'].min())
计算价格
data['价格'] = 0.17074800590158568 * q1 * (q26.0973538046874465) / (data['距离'](-7.64598152989214))
按商品编号和价格取最小值
min_price = data.groupby('任务号码')['价格'].min().reset_index()
输出每个商品对应的价格
print(min_price)
原文地址: https://www.cveoy.top/t/topic/ixP2 著作权归作者所有。请勿转载和采集!