所以我对python有点陌生。我几乎完成了我正在处理的一个项目,我需要绘制两个经度和纬度点之间的距离。我们正在根据这个距离创建一个竞争指数,它总是导致一些十进制值或 0。反过来,我将所有这些值存储在 pandas 数据框中,并试图将它们加在一起以创建一些总数这些指标。
这是我的代码。(为简洁起见,我没有在第 6 行列出所有 c1 到 c435)
import pandas as pd
import geopy.distance
import numpy as np
import csv as csv
from pandas import ExcelWriter
df_distance = pd.DataFrame(['C1': 'C413'])])
df4 = pd.read_csv(r'C:\Users\Jake\PycharmProjects\FM-NAICS-1.0\DF4.csv')
with open("dist_test.csv", "w") as csvfile:
csize = 10 ** 5
for df3 in pd.read_csv(r'DF3.csv', keep_default_na=False, chunksize=csize):
for index, row in df3.iterrows():
lat1 = row['Lat']
lon1 = row['Long']
distance = 0
for index2,row2 in df4.iterrows():
lat2 = row2['Lat']
lon2 = row2['Long']
coords_1 = [lat1, lon1]
coords_2 = [lat2, lon2]
distance = geopy.distance.distance(coords_1, coords_2).miles
if distance > 300:
distance = 0
else:
distance = distance
df_distance = pd.DataFrame([distance])
distance_index = ((300 - distance)/300)
if distance_index != 1:
distance_index = distance_index
else:
distance_index = None
di_df = pd.DataFrame([distance_index])
sum_di = di_df.sum()
exit()
如何让我的 sum_di 对数据框距离索引中的所有值求和?现在我只是得到每个点的输出及其 dtype:float 64。
我想将它附加到 di_df 数据框的末尾。
任何帮助将不胜感激。非常感谢你们。