Questions tagged «r»

统计计算语言和软件环境。

3
生态地理空间难题
我正在寻找针对空间统计问题的另一种更优雅的解决方案。原始数据由每个单独树的xy坐标组成(即,转换为点.shp文件)。尽管在此示例中未使用,但是每棵树还具有代表顶冠直径的相应多边形(即.shp)。左侧的两个图像显示了从单个树位置的点.shp文件得出的景观尺度内核密度估计(KDE),一个是1989年,另一个是2009年。右图显示了两个KDE之间的差异。仅显示平均值的+/- 2标准偏差的值。使用Arc的栅格计算器执行在右侧图像上生成栅格叠加所必需的简单计算(2009 KDE-1989 KDE)。 有没有更合适的方法以统计或图形方式分析树木密度或冠层面积随时间的变化?有了这些数据,您将如何评估地理空间环境中1989年和2009年树木数据之间的变化?鼓励使用ArcGIS,Python,R,Erdas和ENVI中的解决方案。


1
使用R将多边形转换为栅格
我正在尝试将shapefile转换为R中的栅格。我的方法是按如下方式读取栅格: library(rgdal) # Loads SP package by default demo <- readOGR('F:/data/', 'shapefile') # Creates a SpatialPolygonsDataFrame class (sp) 这个工作正常,我可以绘制它。但是,它是一个很大的shapefile,我想将其转换为栅格。我尝试了以下方法: r <- raster(ncol=180, nrow=180) Demo_ras = rasterize(r, demo, 'pop') # pop is an integer here 错误信息: Error in function (classes, fdef, mtable) : unable to find an inherited method for function …
15 raster  shapefile  r 

1
根据点位置和关联的点值对地理数据进行聚类
给定的数据点具有经度,纬度和该点的第​​三个属性值。如何基于属性值将点聚类为组(地理子区域)?我在Google上搜索后发现,这个问题似乎被称为“空间约束聚类”或“区域化”。但是,我对处理地理数据并不熟悉,也不清楚如何使用哪种算法,以及哪种python / R软件包适合此任务。 为了更直观地了解我想要的东西,假设我的数据散布图如下: 因此,每个点都是一个点,x是经度,y是纬度,并且颜色图显示值是大还是小。我想根据位置和值的相似性将这些点划分为子区域/组/集群。如下所示(这并不是我想要的,只是为了显示一个直观的想法。): 那么我该如何实现呢?

1
简化SF对象的多边形
如何在sf不引入间隙和裂缝的情况下简化多边形? 以shapefile为例,我将使用rmapshaper::ms_simplify(): library("pryr") library("rgdal") library("rmapshaper") download.file("https://borders.ukdataservice.ac.uk/ukborders/easy_download/prebuilt/shape/England_gor_2011.zip", destfile = "regions.zip") unzip("regions.zip") regions <- readOGR(".", "england_gor_2011") object_size(regions) # ~13MB regions <- ms_simplify(regions) object_size(regions) # < 1MB 我尝试过sf::st_cast()手册页中指出的内容: 将几何体转换为另一种类型:简化或显式转换 和: 争论:性格 目标类型,如果缺少,则尝试简化;当x为sfg类型(即单个几何)时,则需要指定to。 当我to遗失时,它并没有按预期工作(我知道实在太好了!): library("sf") regions <- sf::read_sf("england_gor_2011.shp") object_size(regions) # ~13MB regions <- sf::st_cast(regions) object_size(regions) # Still 13MB 目前,我正在使用打开文件rgdal::readOGR(),进行简化,保存,然后使用重新加载sf。 有没有更好的办法? rgeos::gSimplify() rgeos::gSimplify()当使用以下参数指定时,@sk的建议可以进行拓扑感知的简化(即在不创建条的情况下进行简化): library("rgeos") regions_gSimplify …
14 r  simplify  sf 

2
如何将John Snow数据集转换为地图坐标
在R的HistData数据包(https://r-forge.r-project.org/R/?group_id=574)中,我具有与约翰·斯诺(John Snow)1854年伦敦霍乱疫情地图有关的数据集。我相信它们在Walter Tobler的监督下经过精心数字化处理后,具有权威性。John Mackenzie在http://www1.udel.edu/johnmack/frec480/cholera/cholera2.html上描述了有关这些数据集的一些详细信息。 不幸的是,死亡,水泵和街道的坐标使用任意坐标系,而不是适用于R中其他GIS应用程序或地图软件(空间包,ggmap等)的地图坐标。 在http://freakonometrics.hypotheses.org/19213中, Arthur Charpentier将ggmap与来自http://www.rtwilson.com/downloads/SnowGIS_v2.zip的John Snow数据版本一起使用 。Cholera_Deaths.shp但是,该文件仅列出489人死亡,而不是我在中记录的578人HistData::Snow.deaths。 一种想法是找到均值与(x,y)坐标的标准偏差之间的关系并进行线性缩放,但是也许有更好的方法吗? 到目前为止,这是我尝试过的 > data(Snow.deaths, package="HistData") > D <- Snow.deaths[,2:3] > colMeans(D) x y 13.03312 11.69721 > var(D) x y x 3.8150987 0.3802654 y 0.3802654 2.7213828 读取Cholera_deaths文件 > folder <- "C:/Dropbox/R/data/Snow/SnowGIS_v2/SnowGIS" > library(maptools) > deaths <- readShapePoints(file.path(folder, "Cholera_Deaths")) > head(deaths@coords) coords.x1 …

3
R:如何从RasterLayer获取经度和纬度?
我绝对是地理数据的初学者,因此,如果问题不适当,请原谅我。 我从NCDC NARR下载了数据,并设法使用该raster软件包将其加载到R中。我想获得一个包含纬度,经度和价值的列表。我知道该功能rasterToPoints()可以完全满足我的要求,但是,我的纬度和经度值看起来很奇怪: r <- raster(myfile) data_matrix <- rasterToPoints(r) head(data_matrix) x y value [1,] -5405401 4347242 70 [2,] -5372938 4347242 88 [3,] -5340475 4347242 76 [4,] -5308012 4347242 85 [5,] -5275549 4347242 87 [6,] -5243086 4347242 88 我想我应该对当前为Lambert Conformal Conic(LCC)的投影做些什么。以下是有关栅格的更多信息。 > r class : RasterLayer dimensions : 277, 349, 96673 …
14 raster  r 

3
R中的反向裁剪(擦除)?
反向剪辑仅保存空间对象中位于 另一个对象边界之外的部分,而常规剪辑则将其保存在另一个对象内部的部分。 在ArcMap中执行反向剪辑?显示了如何在ArcMap中进行操作。 如何在R中执行此操作? 可重现的示例(在Linux机器上): system("wget 'https://github.com/Robinlovelace/Creating-maps-in-R/archive/master.zip' -P /tmp/") unzip("/tmp/master.zip", exdir = "/tmp/master") uk <- readOGR("/tmp/master/Creating-maps-in-R-master/data/", "ukbord") lnd <- readOGR("/tmp/master/Creating-maps-in-R-master/data/", "LondonBoroughs") plot(uk) plot(lnd, add = T, col = "black") 我要在这里做的是保存除伦敦以外的整个英国。视觉上,我希望结果图像中的黑色形状是一个孔。
14 r  clip  erase 

6
将线shapefile转换为栅格,值=像元中线的总长度
我有一个代表道路网络的shapefile文件。我希望对该数据进行栅格化,栅格中的结果值显示了落入栅格像元内的线的总长度。 数据在英国国家网格投影中,因此单位将是米。 理想情况下,我想使用来执行此操作R,并且我猜测程序包中的rasterize功能raster将在实现此功能中起作用,我只是无法弄清楚应应用的功能。
14 raster  r  line  rasterization 

2
在QGIS中为R用户使用R的资源?
我发现许多QGIS文档都是针对GUI的。 我希望能够在QGIS中运行R脚本,但是很难找到一种资源,它将使我成为QGIS和R数据结构之间的关系以及如何在两者之间传递结构的基础。一个相关的问题(是否可以在QGIS 2.0中创建和运行自定义R脚本?)将我定向到此页面:http : //www.qgis.org/en/docs/user_manual/processing/3rdParty.html,但我我发现文档比我正在寻找的东西更多来自QGIS专家的方向。 有什么建议么?
14 qgis  r  references 

2
为proj4string选择正确的值以在R中读取shapefile?
我有一个多边形的shapefile和另一个CSV文件,其中包含(Lat,Lng)对点列表。 我想检查CSV文件中每个(纬度,经度)对属于哪个多边形。 shapefile被投影,proj文件的内容如下: PROJCS["Transverse_Mercator",GEOGCS["GCS_OSGB 1936", DATUM["D_OSGB_1936",SPHEROID["Airy_1830",6377563.396,299.3249646]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",49],PARAMETER["central_meridian",-2],PARAMETER["scale_factor",0.9996012717],PARAMETER["false_easting",400000],PARAMETER["false_northing",-100000],UNIT["Meter",1]] 我的计划如下: 使用readShapePolyR MapTools包中的函数读取shapefile 。 将点坐标从CSV文件读取到数据框中,然后将其转换为SpatialPointsDataFrame 使用over函数确定其落入哪个多边形。 为此,我需要proj4string在第1步中加载shapefile 的同时指定时间,并在使用第3步中的spTransform功能之前,先使用函数将CSV文件中的坐标转换为相同的投影系统over,因为它要求点和多边形必须在同一投影系统下。 是否知道上面显示的proj文件内容的正确值是什么?

1
在R中转换地理坐标系
我在地理坐标系中有点,我想将它们转换为瑞士网格(CH1903 +)。 样本数据: id lon lat 2 7.173500 45.86880 3 7.172540 45.86887 4 7.171636 45.86924 5 7.180180 45.87158 6 7.178070 45.87014 7 7.177229 45.86923 8 7.175240 45.86808 9 7.181409 45.87177 10 7.179299 45.87020 预期结果: id E N 2 2579408.2431 1079721.1499 3 2579333.7158 1079729.1852 4 2579263.6502 1079770.1125 5 2579928.0358 1080028.4605 6 …

3
确定森林间隙内的树木是否使用R进行聚类?
所附的数据集显示了大约50个大小不一的森林林中的大约6000棵树苗。我对学习这些树苗如何在各自的间隙(即成簇,随机,分散)内生长感兴趣。如您所知,传统方法是运行Global Moran'sI。但是,间隙聚集中的树木聚集似乎是对Moran's I的不当使用。我对Moran's I使用50米的阈值距离进行了一些测试统计,产生了无意义的结果(即p值= 0.0000000 ...)。缺口聚集之间的相互作用很可能产生这些结果。我曾考虑过创建一个脚本来遍历各个树冠间隙并确定每个间隙内的聚类,尽管向公众展示这些结果是有问题的。 量化集群中集群的最佳方法是什么?

2
使用R?将点数据转换为网格数据框以进行直方图分析。
我对使用GIS数据非常陌生,并且对R的使用不多。我一直在阅读有关如何使用space-analyst.net PDF书籍分析空间数据的知识,所以我并没有完全迷失,但我想我可以描述一下我的问题,人们可能会提出想法。 我有一个数据集,该数据集在不同的纬度/经度坐标下有约2000个测量值,尽管我可能会细分该数据集,因为数据是在3年内收集的,而且条件随时间而变化。我们将被测量的变量称为“ IP”。 我想在样本数据上使用Kriging或其他插值方法在整个问题区域创建IP映射。然后,我想创建一个直方图来测量各种IP桶中的土地数量。我还需要创建一个直方图,以显示每个存储桶中的样本数量(请注意,样本的实际IP可能比克里金预测的土地高或低)。 我遵循如何将数据加载到SpatialPointsDataFrame并运行kriging分析的方法,我遇到的麻烦是如何将数据转换为网格数据框,以便进行直方图分析。 有任何将点转换为网格的建议吗?
14 raster  r  kriging 

7
如何在GIS中实现按值绘制地图?
我最近一直在做一些有关制图的背景阅读,偶然发现了一些有趣的替代值-按字母 顺序排列的地图。 在此对概念进行了更详细的描述,并提供了全文(不公开)[此处] 2。 在indiemaps 博客上有一些有关实现的详细信息: ...以上所有图形都是使用ActionScript 3制作的,仅使用文本编辑器和最新的免费Flex SDK ... 您如何在GIS软件包(ArcGIS?QuantumGIS?)中实现类似的功能?还是R和ggplot2?还是Python?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.