คำถามติดแท็ก r

ภาษาคอมพิวเตอร์เชิงสถิติและสภาพแวดล้อมของซอฟต์แวร์

1
คัดลอกแรสเตอร์จาก lat / lon ถึง UTM ใน R หรือไม่
ฉันต้องเปลี่ยนมันเป็น UTM เพื่อให้บัฟเฟอร์ทำงานได้ wets<-readOGR(dsn=".",layer="shapefile") r.raster <- raster() extent(r.raster) <- extent(wets) res(r.raster) <- 100 wets.r <- rasterize(wet,r.raster) plot(wets.r) wetsbuf<-buffer(wets.r,width=500) ในระหว่างการสร้างบัฟเฟอร์ซึ่งเป็นบรรทัดสุดท้ายของรหัสมันให้คำเตือนนี้: Warning message: In couldBeLonLat(x) : raster has a longitude/latitude CRS, but coordinates do not match that นี่คือข้อมูล summary(wets.r) layer Min. 1 1st Qu. 1 Median 2 3rd Qu. 9 Max. 11 …

1
คำนวณความหนาแน่นของถนนใน R โดยใช้ความหนาแน่นเคอร์เนลหรือไม่ [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ฉันมีรูปร่างถนนขนาดใหญ่ (~ 70MB) และต้องการแปลงเป็นแรสเตอร์ด้วยความหนาแน่นของถนนในแต่ละเซลล์ เป็นการดีที่ฉันต้องการทำสิ่งนี้ใน R พร้อมกับเครื่องมือบรรทัดคำสั่งของ GDAL หากจำเป็น วิธีการเริ่มต้นของฉันคือการคำนวณความยาวของส่วนของเส้นตรงในแต่ละเซลล์ตามเธรดนี้โดยตรง สิ่งนี้ให้ผลลัพธ์ที่ต้องการ แต่ค่อนข้างช้าแม้สำหรับรูปร่างที่เล็กกว่าของฉันมาก นี่คือตัวอย่างที่ง่ายมากซึ่งค่าเซลล์ที่ถูกต้องชัดเจน: require(sp) require(raster) require(rgeos) require(RColorBrewer) # Create some sample lines l1 <- Lines(Line(cbind(c(0,1),c(.25,0.25))), ID="a") l2 <- Lines(Line(cbind(c(0.25,0.25),c(0,1))), ID="b") sl <- SpatialLines(list(l1,l2)) # Function to calculate lengths of lines in given raster …

3
แยก Raster จาก Raster โดยใช้ Polygon shapefile ใน R
ฉันใหม่สำหรับ R และใช้แพ็คเกจแรสเตอร์ ฉันมีปัญหาในการแยกรูปหลายเหลี่ยมจากไฟล์แรสเตอร์ที่มีอยู่ ถ้าฉันใช้ extract(raster, poly_shape) ฟังก์ชั่นบนแรสเตอร์มันมักจะสร้างรายการที่มีข้อมูล สิ่งที่ฉันต้องการคือการแยกไฟล์แรสเตอร์อื่นที่ฉันสามารถโหลดด้วย ArcGIS อีกครั้ง หลังจากอ่านอีกเล็กน้อยฉันคิดว่าฟังก์ชั่นการครอบตัดคือสิ่งที่ฉันต้องการจริงๆ แต่เมื่อลองใช้ฟังก์ชั่นนี้ crop(raster, poly_shape) ฉันได้รับข้อผิดพลาดนี้: Error in .local(x, y, ...) : extents do not overlap In addition: Warning message: In intersect(extent(x), extent(y)) : Objects do not overlap ไฟล์ raster และ poly_shape เหมือนกันทั้งสองฟังก์ชั่น คุณช่วยบอกฉันทีว่าอะไรที่นี่ผิด มันถูกต้องไหมที่ฟังก์ชั่นการครอบตัดสร้างอีกแบบแรสเตอร์และไม่ใช่รายการ? แก้ไข : ฟังก์ชั่นขอบเขต () ไม่ทำงานสำหรับฉัน …
13 raster  shapefile  r  line 

1
จัดกลุ่ม SpatialPolygonsDataFrame ตาม ID ใน R หรือไม่
ฉันใช้gIntersectฟังก์ชันจากrgeosแพ็คเกจเพื่อกำหนดรูปหลายเหลี่ยมที่ตัดกันในสอง SpatialPolygonsDataFrames (spdfs) ผลลัพธ์เป็นเมทริกซ์เชิงตรรกะที่มี rownames ซึ่งประกอบด้วยรูปหลายเหลี่ยม ID จาก sfdf # 1 และ colnames ID รูปหลายเหลี่ยมจาก spdf # 2 ฉันต้องการที่จะใช้เมทริกซ์นี้ไปยังระบบย่อยทั้งสอง spdfs gIntersectionเดิมถนัดรูปหลายเหลี่ยมที่ไม่มีการทับซ้อนก่อนที่จะใช้ฟังก์ชั่น ฉันสามารถแปลงเมทริกซ์เชิงตรรกะได้อย่างง่ายดายเป็นสองเวกเตอร์ของรหัส (หนึ่งสำหรับแต่ละไฟล์ PDF) ที่แสดงรูปหลายเหลี่ยมเหล่านั้นอย่างน้อยทับซ้อนกัน คำถามของฉันคือ - ฉันสามารถใช้เวกเตอร์ของรูปหลายเหลี่ยม ID เพื่อเซตย่อย spdf ได้หรือไม่ ถ้าเป็นเช่นนั้นมันจะเซตค่าใน@dataสล็อตได้อย่างถูกต้องหรือไม่? ฉันรู้ว่าฉันสามารถย่อย spdfs โดยใช้ไวยากรณ์นี้ได้: spdf[spdf@data$myVariable[someVector], ] สิ่งนี้จะใช้ไม่ได้กับ ID เนื่องจากฝังอยู่ลึกเข้าไปในโครงสร้างรายการ spdf
13 r 

3
การกำหนดค่าตามเงื่อนไขให้กับเซลล์แรสเตอร์ที่อยู่ติดกัน?
ฉันมีค่าแรสเตอร์: m <- matrix(c(2,4,5,5,2,8,7,3,1,6, 5,7,5,7,1,6,7,2,6,3, 4,7,3,4,5,3,7,9,3,8, 9,3,6,8,3,4,7,3,7,8, 3,3,7,7,5,3,2,8,9,8, 7,6,2,6,5,2,2,7,7,7, 4,7,2,5,7,7,7,3,3,5, 7,6,7,5,9,6,5,2,3,2, 4,9,2,5,5,8,3,3,1,2, 5,2,6,5,1,5,3,7,7,2),nrow=10, ncol=10, byrow = T) r <- raster(m) extent(r) <- matrix(c(0, 0, 10, 10), nrow=2) plot(r) text(r) จากแรสเตอร์นี้ฉันจะกำหนดค่า (หรือเปลี่ยนค่า) ให้กับ 8 เซลล์ที่อยู่ติดกันของเซลล์ปัจจุบันตามภาพประกอบนี้ได้อย่างไร ฉันวางจุดสีแดงในเซลล์ปัจจุบันจากบรรทัดรหัสนี้: points(xFromCol(r, col=5), yFromRow(r, row=5),col="red",pch=16) ที่นี่ผลลัพธ์ที่คาดหวังจะเป็น: โดยที่ค่าของเซลล์ปัจจุบัน (เช่น 5 ในค่าแบบแรสเตอร์) จะถูกแทนที่ด้วย 0 โดยรวมแล้วจะต้องคำนวณค่าใหม่สำหรับ 8 เซลล์ที่อยู่ติดกันดังนี้: ค่าใหม่ …
12 raster  r  adjacency 

2
writeOGR พร้อม spatialpolygon ทำให้เข้าใจง่ายโดย gSimplify
ฉันใช้gSimplify(แพ็คเกจ rgeos) เพื่อทำให้รูปทรงเรขาคณิตของ shapefile ง่ายขึ้น funcion ทำงานได้ดี แต่ตอนนี้ฉันไม่สามารถเขียนผลลัพธ์ในรูปแบบไฟล์ใหม่ได้ ฉันลองวิธีบางอย่าง: writeOGR(simplyshape, file, driver="ESRI Shapefile", layer='test') ฉันเข้าใจ obj ต้องเป็น SpatialPointsDataFrame, SpatialLinesDataFrame หรือ SpatialPolygonsDataFrame และด้วย: writePolyShape(simplyshape, file) ฉันเข้าใจ: ข้อผิดพลาด: คือ (x, "SpatialPolygonsDataFrame") ไม่ใช่ TRUE
12 shapefile  r  simplify  rgdal 

1
ทำไมช่อง @ data @ values ​​สำหรับ RasterLayer มีเพียงลอจิคัล (0) และไม่ใช่ค่าจริง
พยายามไปถึงจุดต่ำสุดของเหตุผลเมื่อฉันอ่านในแรสเตอร์ของ NDVI ช่อง @ data @ values ​​ไม่ได้มีค่าจริงจนกว่าฉันจะตั้งค่าด้วยตนเอง ตัวอย่างเช่น: NDVI <- raster("./filename.tif", crs="+proj=longlat +datum=WGS84") NDVI@data@values ## returns: logical(0) สิ่งนี้ไม่ได้เกิดขึ้นกับแรสเตอร์อื่น ๆ ที่ฉันโหลดด้วยวิธีเดียวกันดังนั้นฉันจึงสับสน ฉันหวังว่าฉันจะเฉพาะเจาะจงมากขึ้น แต่ฉันจำไม่ได้ว่าทำอะไรที่แตกต่างมาก่อน ง่ายพอที่จะรับค่าด้วยตนเองโดยใช้: NDVI1@data@values <- getValues(NDVI19east) แต่มันก็เป็นความเจ็บปวดที่ต้องทำสำหรับไฟล์ทุกไฟล์ ดังนั้นคำถามสองส่วน: ทำไมสิ่งนี้ถึงเกิดขึ้นตั้งแต่แรก? ฉันเข้าใจว่าอาจมีบางอย่างเกี่ยวกับวิธีการจัดเก็บไฟล์แรสเตอร์ (เช่นไม่ว่าจะอยู่ในหน่วยความจำหรือไม่ก็ตาม) แต่ฉันไม่เข้าใจจริง ๆ ว่าการเปลี่ยนแปลงวิธีการที่ฉันควรใช้ในการเข้าถึงข้อมูล ... มีวิธีทำให้กระบวนการนี้เป็นอัตโนมัติ (อาจใช้วิธีที่คล้ายกับ lapply) เพื่ออ่านไฟล์ในรูปแบบ RasterLayers และเข้าถึงค่าสำหรับไฟล์เหล่านั้นหรือไม่? โครงการปัจจุบันของฉันเกี่ยวข้องกับการอ่านครั้งละ 6-10 ไฟล์สำหรับ NDVI, ปริมาณน้ำฝนและตัวแปรสภาพแวดล้อมอื่น ๆ เพื่อรวมเข้าด้วยกันและทำงานซ้อนทับแบบถ่วงน้ำหนัก มันจะเป็นประโยชน์ในการทำให้กระบวนการนำเข้าข้อมูลเป็นไปโดยอัตโนมัติ
12 raster  r  memory 

2
รูปหลายเหลี่ยมเชิงพื้นที่% over% รูปหลายเหลี่ยมทำงานอย่างไรเมื่อรวมค่าใน r
ฉันกำลังทำงานในโครงการระบาดวิทยาด้านสิ่งแวดล้อมที่ฉันมีจุดรับสัมผัส (~ 2,000 HHO - IHOs) IHO เหล่านี้ฉีดพ่นในบริเวณใกล้เคียง แต่หยดน้ำและกลิ่นอุจจาระสามารถเดินทางได้หลายไมล์ ดังนั้นการเปิดเผยจุดเหล่านี้จะได้รับบัฟเฟอร์ 3mi และฉันต้องการทราบจำนวนการเปิดรับ IHO (ชนิดต่าง ๆ - ผลรวมของจำนวนมูล, จำนวนหมู, อะไรก็ตามที่ง่ายที่สุดเพียงจำนวนบัฟเฟอร์การสัมผัสซ้อนทับ) ต่อบล็อกสำรวจ NC (~ 200,000) บล็อกการสำรวจสำมะโนประชากร (สีฟ้า) คืออะไร (1) ในเมืองที่มีประชากรมากที่สุด 5 อันดับแรกและ (2) มณฑลที่ไม่ติดกับเขตที่มี IHO อยู่ในนั้น (หมายเหตุ: ทำด้วยฟังก์ชัน gRelate และรหัส DE-9IM - เนียนมาก!) ดูภาพด้านล่างสำหรับภาพ ขั้นตอนสุดท้ายคือการรวมการแสดงแสงที่บัฟเฟอร์เข้ากับบล็อกการสำรวจสำมะโน ที่นี่ฉันอยู่นิ่งงัน ฉันมีช่วงเวลาที่ดีกับฟังก์ชั่น% over% ในแพคเกจ sp จนถึงตอนนี้ แต่เข้าใจจากบทความสั้น …

2
ชี้จุดลงบนแผนที่ใน R (เช่นกับ ggplot2) - วิธีผลักจุดไปด้านข้างทำเครื่องหมายตำแหน่งเดิมรวมจุดที่อยู่ใกล้ ...
ฉันมีฐานข้อมูลที่ประกอบด้วยภาษาลองจิจูดและละติจูดและค่าคุณสมบัติ (ทั้งประเภท 1, ประเภท 2 หรือทั้งสองอย่าง - ในพล็อตเหล่านี้จะมีสีแดงน้ำเงินและเขียวตามลำดับ) อาจมีมากถึงสามจุดต่อภาษาและโดยปกติแล้วคะแนนภาษาสองจุดอาจอยู่ใกล้กันมาก name longitude latitude sp_sum 1 Modern Armenian 45 40 both 2 Modern Armenian 45 40 both 3 Modern Armenian 45 40 spatial 4 Dieri 138 -28.1667 both 5 Dieri 138 -28.1667 both 6 Finnish 25.5577 64.7628 non-spatial 7 Crimean Tatar 28.1418 …

2
คำนวณระยะทางที่สั้นที่สุดจากจุดหนึ่งไปอีกบรรทัดโดยใช้ QGIS?
วิธีที่ดีที่สุดในการคำนวณระยะทางจากถนนที่ใกล้ที่สุดสำหรับชุดของจุดที่อยู่ใน QGIS คือมีชุดข้อมูลขนาดใหญ่มาก? (QGIS 2.0.1, Win XP) ฉันอ่านคำตอบของคำถามที่คล้ายกันก่อนหน้านี้: การวัดระยะห่างระหว่างเส้นและจุดใน QGIS วาดเส้นตั้งฉากใน PyQGIS? คำนวณระยะห่างขั้นต่ำระหว่างจุดและรูปหลายเหลี่ยมใน QGIS หรือไม่ /programming/16448402/distance-of-point-feature-to-nearest-polygon-in-r แต่ถึงอย่างไร: ปลั๊กอิน MMQGIS ค้นหาการรบกวนไปยังโหนดที่ใกล้ที่สุดของเครือข่ายสายไม่ใช่ระยะทางสั้นที่สุด (ตั้งฉาก) ไปยังบรรทัด สคริปต์ที่เสนอ R และ Python ทำงานได้อย่างถูกต้องสำหรับชุดข้อมูลขนาดเล็กและสามารถนำไปใช้ในตัวสร้างโมเดลได้ แต่สำหรับงานของฉันฉันมี 530 คะแนนและเลเยอร์ถนนระดับภูมิภาคที่มีคุณสมบัติประมาณ 135'000 คะแนนทั้งหมดจะใช้เวลาจำนวนมหาศาล ฉันมีปัญหาในการทำให้ GRASS ทำงานใน QGIS 2.0.1 ( GRASS ใน QGIS ไม่ทำงาน (windows XP) )
12 qgis  python  r  distance 

2
ลดความละเอียดของ shapefile ใน R (หรือ QGIS หากจำเป็น)
ฉันใช้ shapefiles ของประวัติศาสตร์ขอบเขตรัฐของสหรัฐอเมริกาจากNHGISเพื่อสร้างแผนที่ใน R. รูปร่างเหล่านี้มีความละเอียดสูงกว่าที่ฉันต้องการเมื่อทำแผนที่ในระดับประเทศ: มากกว่า 2 ล้านข้อสังเกตสำหรับไฟล์เดียว มีวิธีที่ฉันสามารถลดความละเอียดของ shapefiles เหล่านี้ใน R หรือไม่? หากจำเป็นฉันสามารถทำได้ใน QGIS แทน
12 qgis  shapefile  r  resolution 

2
การลบแถวใน shapefile ใน R
ฉันได้นำเข้า shapefile ลงใน R และเข้าร่วมกับตาราง Shapefile ของฉันมีรหัสสำรวจสำมะโนประชากรทั้งหมดในขณะที่ตารางของฉันมีรหัสสำรวจสำมะโนประชากรที่เลือกไว้เท่านั้น ตอนนี้ฉันกำลังพยายามลบแถวทั้งหมดไม่ได้รับการจับคู่ นี่คือชุดข้อมูลของฉันดูเหมือน (ฉันพยายามลบแถวทั้งหมดด้วย NA ดังนั้นทั้งสองจะต้องถูกลบออก): CTUID Cluster Average 5350007.01 1 124.53 5350007.02 1 234.87 5350010.01 4 110.11 5350010.02 5 187.68 5350001 NA NA 5350002 NA NA ฉันพยายามใช้รหัสบรรทัดนี้: shape2[!(rowSums(is.na(shape2))==NCOL(shape2)),] ซึ่งทำให้ฉันข้อผิดพลาดนี้: Error in rowSums(is.na(shape2)) : 'x' must be an array of at least two dimensions …

3
อ่านไฟล์ Geodatabase โดยใช้ R?
ไฟล์ฐานข้อมูลภูมิศาสตร์ (fgdb) รวมถึงตารางฐานข้อมูลไฟล์จำนวนมาก เท่าที่ผมรู้ว่าพวกเขามีอยู่เป็นdbfไฟล์ Database.gdbแต่อยู่ภายใน ใน ArcCatalog เส้นทางของไฟล์มีลักษณะคล้ายC:\Users\...\Database.gdb\Stats_AAกัน จะอ่านdbfไฟล์เหล่านี้ทั้งหมดได้อย่างไรR(ซอฟต์แวร์ทางสถิติ) เส้นทางที่ถูกต้องในการจัดหาคืออะไร? ฟังก์ชั่นที่ใช้คือread.dbf(ในแพ็คเกจต่างประเทศ) สายพันธุ์ของ test<-read.dbf(file="C:/Users..Database.gdb/Stats_AA.dbf") และ test<-read.dbf(file="C:/Users..Database/Stats_AA.dbf") ไม่ทำงาน "รูปแบบ" ที่ถูกต้องของชื่อไฟล์ที่จะใช้คืออะไรหรือฉันจำเป็นต้องส่งออกตารางฐานข้อมูลไฟล์ทั้งหมดไปยังรูปแบบหรือตำแหน่งอื่นหรือไม่?

4
วิธีแปลงรหัสไปรษณีย์เป็นละติจูดและลองจิจูด?
ฉันมีชุดข้อมูลที่มีรายการรหัสไปรษณีย์ มีวิธีในการแปลงรหัสไปรษณีย์เหล่านี้ไปยังพิกัดละติจูดและลองจิจูดหรือไม่?

3
วิธีการรับเพื่อนบ้านที่สองที่ใกล้ที่สุดระหว่างรูปแบบจุดสองจุดใน R?
มีวิธีการหาระยะทางสำหรับเพื่อนบ้านที่ใกล้ที่สุดที่สองระหว่างรูปแบบจุดสองจุดใน R หรือไม่? แพ็คเกจ spatstat มีฟังก์ชั่นที่เรียกว่า nncross แต่มันใช้กับเพื่อนบ้านที่ใกล้ที่สุดระหว่างสองรูปแบบเท่านั้นและฉันต้องการระยะทางกับเพื่อนบ้านที่ใกล้ที่สุดที่สอง
12 r  spatstat 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.