当前位置:   article > 正文

地理编码应用程序实例-利用LanceDB、Pgvector构建地址查询应用_lancedb安装

lancedb安装

介绍

在本文中,我的目标是开发一个利用矢量数据库来查询地址和位置数据的应用程序。

数据准备和向量嵌入

我们将使用受地震影响的城市的数据进行应用。

要安装矢量嵌入库,我们需要运行以下命令:

pip install pandas geopandas pyarrow transformer torch

如果您在安装pytorch库时遇到错误,可以从这里下载。

让我们导入我们安装的库:

  1. from transformers import AutoTokenizer, AutoModel
  2. import torch
  3. import pandas as pd
  4. import geopandas as gpd

读取数据:

  1. df = pd.read_csv("bina.csv")
  2. df.columns
  3. """
  4. ['il', 'ilce', 'mahalle', 'sokak', 'binaNo', 'x', 'y']
  5. """

坐标系变换:

  1. gdf = gpd.GeoDataFrame(df,geometry=gpd.points_from_xy(df["x"],df["y"]),crs=4326)
  2. gdf = gdf.to_crs("EPSG:3857")
  3. df["x"] = gdf.geometry.x
  4. df["y"] = gdf.geometry.y

组合地址信息并根据坐标创建向量:

  1. df["adres"] = df[['il', 'ilce', 'mahalle', 'sokak', 'binaNo']].apply(lambda x: f"{x['mahalle']} mahallesi {x['sokak']} no {x['binaNo']} {x['ilce']} {x['il']} ",axis=1)
  2. df["vector_geom"] = df[["x","y"]].apply(lambda x: [x["x"],x["y"]],axis=1)
  3. df.to_csv("bina.csv",index=False)
df.sample(10)

它包含城市、区、社区、街道、建筑物号码和位置信息。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/703571
推荐阅读
相关标签
  

闽ICP备14008679号