云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

企业邮箱_华为云服务登录不了_评分榜

小七 141 0

在数据科学领域,返利折扣,空间数据越来越重要。因此,(地理)空间数据科学或高级(地理)空间分析预计将成为2020年的趋势主题之一。由于其将多模型数据与嵌入式机器学习无缝集成,SAP HANA是这一不断发展的学科的首选平台。

为了使数据科学家能够在日常工作中工作,SAP HANA已经提供了相当长一段时间的Python集成。机器学习算法的saphanapython客户端API甚至支持从Python调用数据库中的ML算法。通过这种集成,数据科学家可以纯粹用Python构建机器学习模型,同时算法应用于数据库中,而不需要向客户端传输实际数据。

在这个博客中,我想展示一些基本的地理空间分析以及与SAP HANA嵌入式机器学习的集成。我将采用数据科学家的视角,使用Jupyter笔记本进行建模。

尽管事实上,云购,"空间不仅仅是地图",但将空间分析的结果可视化始终是一个好主意。有各种各样的图书馆在Jupyter笔记本中提供地理空间可视化,Folium是其中最著名的一个。不过,在玩了其中一些库之后,我决定使用开普勒.gl为了这个博客。开普勒.gl是一个用于地理空间分析可视化的开源应用程序,可用于Jupyter笔记本。它特别适合于大量的数据,并且在编码方面有相当低的触控体验(这是我选择它的主要原因)开普勒.gl).

完整的Jupyter笔记本,包括可复制的分析,可从GitHub下载。它设计为在vanilla SAP HANA Express实例上运行。如果你对Jupyter笔记本本身有信心,你也可以直接跳进去跳过博客的其余部分:

https://github.com/mkemeter/public/blob/master/TaxiTrajectories.ipynb

如果你不喜欢Python或者更喜欢冗长的描述,我将向您展示以下最重要的步骤和想法。

在寻找适合地理空间分析的数据集时,我在Kaggle上偶然发现了这个漂亮的数据集:

https://www.kaggle.com/crailtap/taxi-trackle

数据集包含波尔图市的出租车轨迹,格式为线串。事实上,它并不简单地包含点数据,这使得它特别有趣。数据本身可以作为CSV文件下载,我们将通过Jupyter笔记本导入SAP HANA。

为了更好地理解数据的上下文,我们还将纳入OpenStreetMap的兴趣点(POI)数据,因为我们预计出租车的取车位置与高密度的POI相关。

要从Jupyter的地理空间分析开始,我们需要设置和导入所需的库。我们将使用以下主要包:

Pandas和GeoPandas在Python中管理数据。虽然大多数人都熟悉熊猫,但GeoPandas只为处理空间数据的开发人员所知。它可以被理解为是随着地理空间能力的增强而增强的。用于数据库通信的SQLAlchemy。SQLAlchemy有一个SAP HANA方言可用。请按照以下说明进行初始设置。OSMnx是下载OpenStreetMap数据的舒适库。我们将使用此库将POI数据加载到SAP HANA,如本文所述。开普勒.gl用于可视化地理空间数据。KeplerGL是一个用于地理空间分析可视化的开源应用程序,它已经嵌入到Jupyter笔记本中。从数据帧中可视化几何图形本质上是一个单行线,您将在后面看到。用于调用数据库机器学习算法。在这里,您必须小心地为您的APL安装选择正确的版本。Andreas Forster的博客(特别是APL4附录)帮助为我的HANA Express实例设置了正确的版本。

完整的导入列表:

值得一提的是,有一些基于SQLAlchemy的用于Jupyter笔记本的内联SQL单元魔术,我使用了它。cell magic可以将SQL语句或多或少地直接写入单元格,而无需Python开销。

有关更多详细信息,请参阅本博客:https://towardsdatascience.com/jupyter-magics-with-sql-921370099589

我们希望将CSV文件加载到Python中,并将其保存在SAP HANA中以供进一步处理。使用Pandas将CSV导入数据框只是一行代码:

一旦数据被加载到数据框中,我们需要直接获取一些数据类型(例如,将时间戳转换为适当的DateTime字段),并过滤掉不包含轨迹数据的行项目。有一定数量的出租车没有或只有一个GPS坐标。

在SAP HANA中保存数据需要两个过程:

首先,我们要保存没有地理空间数据类型的平面数据。hdb\U连接=sqlalchemy.create\u引擎(连接字符串).connect()测向_csv.to\u sql(name='taxi',con=hdb\u connection,if\u exists='replace',大数据的,chunksize=500)其次,云服务器买哪个好,我们将从数据库中的文本表示生成地理空间列。ALTER TABLE TAXI ADD(形状stu几何体($srid))更新滑行集SHAPE=ST\u GEOMFROMTEXT(POLYLINE,4326).ST\u TRANSFORM($srid)ALTER TABLE TAXI DROP(POLYLINE)

初始数据集只提供一个带有一定数量点的轨迹列。从数据描述我们知道每15秒有一个GPS坐标。一次包含10个GPS坐标的旅行将持续150秒。