জন স্নো ডেটা সেটগুলি মানচিত্রের স্থানাঙ্কগুলিতে কীভাবে অনুবাদ করবেন


14

আর এর জন্য হিস্টডেটা প্যাকেজে ( https://r-forge.r-project.org/R/?group_id=574 ) আমার কাছে লন্ডনে কলেরার প্রকোপের জন স্নো এর মানচিত্রের সাথে সম্পর্কিত ডেটা সেট রয়েছে, 1854। আমি বিশ্বাস করি তারা ওয়াল্টার টোবলারের তত্ত্বাবধানে সাবধানতার সাথে ডিজিটালাইজড হওয়ার পরে এটি অনুমোদিত। এই ডেটা সেটগুলির কিছু বিশদ জন ম্যাকেনজি দ্বারা http://www1.udel.edu/jhnmack/frec480/cholera/cholera2.html তে বর্ণিত হয়েছে ।

দুর্ভাগ্যক্রমে, মৃত্যু, পাম্প এবং রাস্তাগুলির স্থানাঙ্কগুলি একটি স্বেচ্ছাসেবী সমন্বয় ব্যবস্থা ব্যবহার করে, আর জিআইএস অ্যাপ্লিকেশনগুলির জন্য উপযুক্ত মানচিত্রের সমন্বয় বা আর-তে স্থানীয় ম্যাপিং সফ্টওয়্যার নয় (স্থানিক প্যাকেজগুলি, জিজিএম্যাপ ইত্যাদি) not

ইন http://freakonometrics.hypotheses.org/19213 আর্থার Charpentier থেকে জন স্নো ডেটার একটি সংস্করণের সাথে ggmap ব্যবহার http://www.rtwilson.com/downloads/SnowGIS_v2.zipCholera_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

কলেরা_ডিথস ফাইলটি পড়ুন

> folder <- "C:/Dropbox/R/data/Snow/SnowGIS_v2/SnowGIS"
> library(maptools)
> deaths <- readShapePoints(file.path(folder, "Cholera_Deaths"))
> head(deaths@coords)
  coords.x1 coords.x2
0  529308.7  181031.4
1  529312.2  181025.2
2  529314.4  181020.3
3  529317.4  181014.3
4  529320.7  181007.9
5  529336.7  181006.0
> # deaths has only 250 observations; 489 deaths
> sum(deaths@data$Count)
[1] 489

 > # try to relate to Snow.deaths
> X <- deaths@coords
> colnames(X) <- c("x", "y")
> 
> XX <- data.frame(X, Freq=deaths@data$Count)
> XX <- vcdExtra::expand.dft(XX)
> 
> colMeans(XX)
       x        y 
529414.8 181031.9 
> var(XX)
          x        y
x 10813.816 1521.693
y  1521.693 6227.924
>

ঠিক আছে, তারপরে আমি Dএকই উপায় এবং মানক বিচ্যুতিগুলি আবার স্কেল করার চেষ্টা করি XX, তবে এখানে কিছু সঠিকভাবে কাজ করে না - এর কলামটির অর্থগুলি এর Dscaledসাথে সমান হওয়া উচিত XX:

> # scale D to have the same means and standard deviations as XX
> Dscaled <- scale(D, center=TRUE, scale=TRUE)
> Dscaled <- scale(Dscaled, center=colMeans(XX), scale=sqrt(diag(var(XX))))
> colMeans(Dscaled)
        x         y 
-5091.040 -2293.947 
>

সম্পাদনা করুন: নতুন ফাংশন দ্বারা অঙ্কিত স্নোয়ের মানচিত্রটি SnowMap(axis.labels=TRUE)এখন HistDataআর-ফোর্জে (রেভ ১০২) এর বিকাশ সংস্করণে দেখতে এটি সমস্যা হতে পারে । অক্ষ লেবেলগুলি নীচে বাম কোণে স্থানাঙ্ক ব্যবস্থার উত্স দেখায় যেহেতু তারা আমার ডেটা Snow.*ডেটা সেটে রয়েছে।

SnowMap


আমি মেলানোর জন্য প্রতিটি ডেটা সেট থেকে পাম্পগুলি স্কেল করার চেষ্টা করেছি। স্থানাঙ্কীগুলি 100 মিটার হওয়ার বিষয়ে সহায়তার (স্নো.পম্পস) লাইনটি আমি বিশ্বাস করি না, যেহেতু প্রায় 54 স্কেল (এবং একটি অনুবাদ) শেপফাইলের ইউকে গ্রিড স্থানাঙ্কগুলিতে ম্যাপিংয়ের সবচেয়ে ভাল কাজ করে (যা অবশ্যই রয়েছে মিটার)। তারপরেও পয়েন্টগুলি ঠিক ওভারল্যাপ হয় না, অন্য কিছু ঘূর্ণন / স্কিউ স্পষ্টভাবে উপস্থিত রয়েছে। যেহেতু প্রতিটি ডেটা সেটে সংশ্লিষ্ট পাম্পগুলি সনাক্ত করা এবং সেগুলির জন্য শিফ্ট / অনুবাদ গণনা করা তার পক্ষে কম পাম্প সম্ভব।
স্পেসডম্যান

আমি ধরে নিয়েছি আপনি হিস্টডাটা / ইনস্টল / ডক / স্নো_ডিথস-ডুপ্লিকেটস এইচটিএমএল দেখেছেন এবং এটিকে সহায়তা করেছেন?
ব্যারিকার্টার

আমার কাছে এটিও ঘটেছিল যে আমি আমার Snow.*ফাইলে স্থানাঙ্কগুলির রৈখিক রূপান্তরটি জিআইএস ভিত্তিক মানচিত্রে দুটি পাম্পের অবস্থানের সাথে বা তিনটি পাম্পের অবস্থানের সাথে সঠিকতা পরীক্ষা করতে পেরেছি obtain দুর্ভাগ্যক্রমে, SnowGISফাইলগুলিতে পাম্পগুলির জন্য কোনও লেবেল নেই , এবং কীভাবে সেগুলি প্লট করা যায় তার কোনও উদাহরণ আমি দেখিনি যাতে আমি তাদের সাথে দৃশ্যত তুলনা করতে পারি।
ব্যবহারকারী 101089

1
সেখানে আপনার শিরোনাম পড়ার পরে এক সেকেন্ডের জন্য, আমি ভেবেছিলাম আপনি ওয়েস্টারোসে স্থানাঙ্কের মানচিত্র তৈরি করতে চান ।
ব্যবহারকারী 35594

উত্তর:


4

সম্ভবত শেডফাইলটি http://donboyes.com/2011/10/14/john-snow-and-serendipity থেকে মূল্যায়ন করুন যার 578 পয়েন্ট রয়েছে।

আমি মনে করি না হিস্টডাটা স্নো ডেথসকে রবিন উইলসনের (@ রবিন্টাব) সংস্করণটির সাথে সম্পর্কিত করার চেষ্টা করা হবে কারণ শেফফাইলে রাস্তায় রাস্তা থেকে সরে থাকা একাধিক পয়েন্টের পরিবর্তে একক ঠিকানায় একাধিক মৃত্যুর জন্য একক পয়েন্ট সমন্বয় রয়েছে মানচিত্র

রবিনের সংস্করণ অবশ্যই অনেক পয়েন্ট মিস করছে। তাত্ক্ষণিকভাবে দেখুন, বেশ কয়েকটি বাহ্যিক একক মৃত্যুর হাতছাড়া হয়েছে। আরেকটি সমস্যা মানচিত্রের কেন্দ্রস্থলের নিকটে যেখানে একত্রে রাখার সময় এটি যথাযথভাবে মিলিত হয়নি (এটি উইকিপিডিয়া মানচিত্রেও দৃশ্যমান ) এবং এটি বিভিন্ন পয়েন্টকে অস্পষ্ট করে।

ডাউনলোডে সরবরাহিত মানচিত্রের এক্সট্রাক্ট :

এখানে চিত্র বর্ণনা লিখুন

UCLA সংস্করণ থেকে নিষ্কাশন :

এখানে চিত্র বর্ণনা লিখুন


গ্রেট! সংক্ষিপ্ততার জন্য, .shpফাইলগুলির লিঙ্কটি হ'ল donboyes.com/download/snow_shp.zip
ব্যবহারকারী 101089

2

এই প্রশ্নের উত্তর সম্পূর্ণ করতে, নিম্নলিখিত কোডটি মূল টোবলার ফাইলগুলিতে ( HistDataডাব্লু) এবং ডন বয়েস দ্বারা প্রমাণিত যারা স্থানাঙ্কগুলির রৈখিক রূপান্তরটি সন্ধান করে ।

folder <- "C:/Dropbox/R/data/Snow/snow_shp"
library(maptools)
deaths <- readShapePoints(file.path(folder, "deaths_gcs"))
data(Snow.deaths, package="HistData")
X <- deaths@coords
D <- Snow.deaths[,2:3]

তারপরে, এক্স [, 1] এ ডি [, 1] এবং এক্স [, 2] এ ডি [, 2] এর সাথে সম্পর্কিত করুন এবং পুনরায় প্রতিবেদন করুন। লিনিয়ার ট্রান্সফর্মেশনটি রিগ্রেশন কোঅফিসিয়েন্টগুলি দিয়ে থাকে।

> cor(D[,1], X[,1])
[1] 0.9999664
> cor(D[,2], X[,2])
[1] 0.9995559
> 
> # linear transformations to GIS coords
> lm(D[,1] ~ X[,1])

Call:
lm(formula = D[, 1] ~ X[, 1])

Coefficients:
(Intercept)       X[, 1]  
      185.4       1264.7  

> 
> lm(D[,2] ~ X[,2])

Call:
lm(formula = D[, 2] ~ X[, 2])

Coefficients:
(Intercept)       X[, 2]  
    -105441         2047  
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.