空间同位模式挖掘 co-location

目录

前言

一、空间同位模式挖掘概述

二、经典co-location算法实现及演示

1.代码实现

2.演示操作

总结


前言

经典co-location算法是经典的空间


提示:以下是本篇文章正文内容,下面案例可供参考



一、空间同位模式挖掘概述

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。



二、经典co-location算法实现及演示



1.代码实现

1.1互邻距离计算

from numpy import *
import pandas as pd

def neighbor_dist(mindist,point):
    #计算互最近邻距离
    #input:mindist距离阈值,point点数据集
    #output:ppf 互邻近距数据集
    data=point
    pdist = mindist
    n = len(data['X'])
    px = data['X']
    py = data['Y']
    ptype = data['TYPE']
    pf = pd.DataFrame()
    for i in range(1, n):
        f = pd.DataFrame()
        f1 = (px > px[i] - pdist) & (px < px[i] + pdist)
        f2 = (py > py[i] - pdist) & (py < py[i] + pdist)
        itype = ptype[i]
        k = ptype != itype
        inid2 = array(data.index[k & (f1 & f2) & (data.index > i)])
        if len(inid2) == 0: continue
        f['type1'] = ptype[array(repeat(i, len(inid2)))]
        f['type2'] = list(ptype[k & (f1 & f2) & (data.index > i)])
        f['stid'] = array(repeat(i, len(inid2)))
        f['esid'] = inid2
        f['X1'] = px[array(repeat(i, len(inid2)))]
        f['Y1'] = py[array(repeat(i, len(inid2)))]
        f['X2'] = array(px[k & (f1 & f2) & (data.index > i)])
        f['Y2'] = array(py[k & (f1 & f2) & (data.index > i)])
        distane = sqrt((f['X1'] - f['X2']) ** 2 + (f['Y1'] - f['Y2']) ** 2)
        f['dist'] = distane
        pf = pd.concat([pf, f])
        g = pf['dist'] < pdist
        ppf = pf[g]
    return ppf

输入值mindist是距离阈值,根据L函数计算得到,这里直接采用之前所计算得到的

点数据集的结构:

计算得到的结果:



2.演示操作

代码如下(示例):

data = pd.read_csv( 'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv') print(data.head()) 

该处使用的url网络请求的数据。




总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值