我有一个像这样的csv davaset我在long lat列中进行了地理编码和添加,它有这些列
现在我在网上下载了一个更新的版本,它有时会添加这样的新房子(我突出了错误的房子,它应该是上面的那个抱歉:)
)
我希望将两个数据集合并在一起并保留我的经度和纬度信息,并且只保留我的列。我似乎无法弄清楚如何进行合并,所以我手动编写了这个python,但它太慢了
for index, row in new_ppr.iterrows():
address= row['Address']
houses_in_district = MASTER_ppr.loc[MASTER_ppr['Address'] == address]
if len(houses_in_district >= 1):
x = houses_in_district.tail(1).index.item()
new_ppr.loc[index, 'Longitude'] = houses_in_district.loc[x,'Longitude']
new_ppr.loc[index, 'Latitude'] = houses_in_district.loc[x,'Latitude']
else:
new_ppr.loc[index, 'Longitude'] = ""
new_ppr.loc[index, 'Latitude'] = ""
答案 0 :(得分:0)
如果两个表中都有主要索引,我认为最简单的方法是使用pandas
,类似于:
import pandas as pd a = pd.read_csv('filename1.csv') b = pd.read_csv('filename2.csv') c = a.merge(b, how = 'left', left_on = 'INDEX IN A', right_on = 'INDEX IN B')
您需要根据要执行合并的方法计算每个表中的索引。更多详细信息和示例可在pandas.DataFrame.merge
上找到