R के लिए HistData पैकेज में ( https://r-forge.r-project.org/R/?group_id=574 ) मेरे पास लंदन, 1854 में हैजा के प्रकोप के जॉन स्नो के नक्शे से संबंधित डेटा सेट हैं। मुझे विश्वास है कि वे आधिकारिक हैं, वाल्टर टॉबलर की देखरेख में सावधानी से डिजीटल किए गए हैं। इन डेटा सेटों पर कुछ विवरण जॉन मैकेंजी द्वारा http://www1.udel.edu/johnmack/frec480/cholera/cholera2.html पर बताए गए हैं ।
दुर्भाग्य से, मौतों, पंपों और सड़कों के निर्देशांक एक मनमाना समन्वय प्रणाली का उपयोग करते हैं, न कि अन्य जीआईएस अनुप्रयोगों या आर (स्थानिक पैकेज, ggmap, आदि) में मैपिंग सॉफ़्टवेयर के लिए उपयुक्त मैप निर्देशांक।
में http://freakonometrics.hypotheses.org/19213 आर्थर Charpentier से जॉन स्नो डेटा का एक संस्करण के साथ ggmap का उपयोग करता
http://www.rtwilson.com/downloads/SnowGIS_v2.zip । 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 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
>
EDIT: इस समस्या में मददगार हो सकता है कि स्नो के नक्शे को नए फ़ंक्शन द्वारा खींचा जाए, SnowMap(axis.labels=TRUE)
अब HistData
आर-फोर्ज पर (102) के विकास संस्करण में । अक्ष लेबल निचले बाएँ कोने में समन्वय प्रणाली की उत्पत्ति दिखाते हैं क्योंकि वे मेरे डेटा Snow.*
डेटा सेट में हैं।
Snow.*
फ़ाइलों में निर्देशांक के रैखिक परिवर्तन को जीआईएस-आधारित मानचित्र में दो पंपों के स्थानों के साथ प्राप्त कर सकता हूं , या सटीकता की जांच करने के लिए तीन। दुर्भाग्य से, SnowGIS
फ़ाइलों में पंपों के लिए कोई लेबल नहीं हैं , और मैंने उन्हें कैसे प्लॉट किया जाए, इसका उदाहरण नहीं देखा है ताकि मैं उनकी तुलना नेत्रहीन कर सकूं।