> f <- read.csv("C:/Users/MSI/Desktop/Diploma/raw_data_v71.csv",header = TRUE, sep=";", quote="\"", encoding = "UTF-8")
> MigrMore5 <- f[f$MIGR >5, ]
> citiesMore5 <- unique(MigrMore5$TO)
#первым параметром передается переменная, которую записывают
#да, я так и не поняла, какой парметр включить, чтобы все красиво в файл писалось> write.table(citiesMore5, "C:/Users/MSI/Desktop/Diploma/citiesMore5.csv")
> length(citiesMore5)
[1] 144
Да, тут немного странная штука.... Если уровней больше,чем массива, видимо, он десчитает уровни по всей табличке до усечения.
Попробую сделать лапками для нескольких крупных городов:
1) Для москвы:
> testMcw <- MigrMore5[MigrMore5$TO == "Москва", ]
> View(testMcw)
> testMcw$MIGR <- log(testMcw$MIGR)
> testMcw$DISTANCE <- log(testMcw$DISTANCE)
> testMcw
X.U.FEFF.FROM TO MIGR TO_POP FROM_LAT FROM_LON TO_LAT TO_LON
361 Большой Камень Москва 3.496508 11612943 43.11667 132.36667 55.75583 37.6173
1031 Братск Москва 6.478510 11612943 56.11667 101.60000 55.75583 37.6173
1701 Верхотурье Москва 2.397895 11612943 58.86667 60.80000 55.75583 37.6173
2371 Вилючинск Москва 4.779123 11612943 52.92875 158.40502 55.75583 37.6173
3041 Губкинский Москва 5.164786 11612943 64.43333 76.50000 55.75583 37.6173
3711 Димитровград Москва 6.603944 11612943 54.23333 49.58333 55.75583 37.6173
4381 Дубна Москва 6.532334 11612943 56.73202 37.16690 55.75583 37.6173
5051 Дудинка Москва 4.189655 11612943 69.40000 86.18333 55.75583 37.6173
5721 Заречный Москва 5.710427 11612943 56.81330 61.33330 55.75583 37.6173
6391 Игарка Москва 2.302585 11612943 67.46667 86.58333 55.75583 37.6173
7061 Качканар Москва 3.135494 11612943 58.69940 59.49000 55.75583 37.6173
7731 Лесной Москва 4.532599 11612943 56.75004 60.43484 55.75583 37.6173
8401 Магадан Москва 6.504288 11612943 59.55000 150.80000 55.75583 37.6173
9071 Мегион Москва 5.030438 11612943 61.05000 76.10000 55.75583 37.6173
9742 Муравленко Москва 4.905275 11612943 63.79126 74.53632 55.75583 37.6173
10412 Невьянск Москва 2.397895 11612943 57.48333 60.20000 55.75583 37.6173
11082 Новоуральск Москва 4.564348 11612943 57.25000 60.08333 55.75583 37.6173
11752 Норильск Москва 6.599870 11612943 69.33333 88.21667 55.75583 37.6173
12422 Ноябрьск Москва 5.883322 11612943 63.18420 75.44776 55.75583 37.6173
13092 Обнинск Москва 6.993933 11612943 55.11216 36.60699 55.75583 37.6173
13762 Озерск Москва 5.620401 11612943 55.75000 60.71667 55.75583 37.6173
14432 Саров Москва 6.612041 11612943 54.93428 43.32525 55.75583 37.6173
15102 Снежинск Москва 5.583496 11612943 56.09000 60.72972 55.75583 37.6173
15772 Сосновый Бор Москва 4.262680 11612943 59.88333 29.10000 55.75583 37.6173
16442 Трехгорный Москва 4.770685 11612943 54.82129 58.44951 55.75583 37.6173
17112 Усть-Илимск Москва 5.568345 11612943 58.00000 102.66667 55.75583 37.6173
DISTANCE FR_OKTMO TO_OKTMO SAME_REG ADM2 ADM1 M2PRICE
361 8.770439 5700000 45000000 0 1 1 129524
1031 8.252967 25714000 45000000 0 1 1 129524
1701 7.263330 65709000 45000000 0 1 1 129524
2371 8.820995 30000000 45000000 0 1 1 129524
3041 7.746733 71952000 45000000 0 1 1 129524
3711 6.660575 73705000 45000000 0 1 1 129524
4381 4.718499 46718000 45000000 1 1 1 129524
5051 7.938089 4811121 45000000 0 1 1 129524
5721 7.286876 56734000 45000000 0 1 1 129524
6391 7.936660 4654117 45000000 0 1 1 129524
7061 7.207860 65743000 45000000 0 1 1 129524
7731 7.249215 65749000 45000000 0 1 1 129524
8401 8.683555 44701000 45000000 0 1 1 129524
9071 7.732369 71873000 45000000 0 1 1 129524
9742 7.701652 71955000 45000000 0 1 1 129524
10412 7.235619 65714000 45000000 0 1 1 129524
11082 7.231287 65752000 45000000 0 1 1 129524
11752 7.965893 4729000 45000000 0 1 1 129524
12422 7.719130 71958000 45000000 0 1 1 129524
13092 4.564348 29715000 45000000 0 1 1 129524
13762 7.271704 75743000 45000000 0 1 1 129524
14432 5.918894 22704000 45000000 0 1 1 129524
15102 7.268223 75000000 45000000 0 1 1 129524
15772 6.523562 41754000 45000000 0 1 1 129524
16442 7.183871 75000000 45000000 0 1 1 129524
17112 8.244334 25738000 45000000 0 1 1 129524
Ахахахахаха! Это все неправильно. И надо строить по городам "FROM" таблицу.
Лан.
Итак, проблема номер раз, с которой я столкнулась - это кривое название столбцов, при пользовании этой командой:
> f <- read.csv("C:/Users/MSI/Desktop/Diploma/raw_data_v71.csv",header = TRUE, sep=";", quote="\"", encoding = "UTF-8")
Проверяются имена столбцов этой функцией: > names(f)
[1] "X.U.FEFF.FROM" "TO" "MIGR" "TO_POP" "FROM_LAT"
[6] "FROM_LON" "TO_LAT" "TO_LON" "DISTANCE" "FR_OKTMO"
[11] "TO_OKTMO" "SAME_REG" "ADM2" "ADM1" "M2PRICE"
Мне НЕ нравится название первого столбца. Меняем его этой же функцией: > names(f) <- c("FROM","TO", "MIGR", "TO_POP", "FROM_LAT", "FROM_LON", "TO_LAT","TO_LON" , "DISTANCE", "FR_OKTMO", "TO_OKTMO", "SAME_REG", "ADM2", "ADM1" , "M2PRICE" )
> names(f)
[1] "FROM" "TO" "MIGR" "TO_POP" "FROM_LAT" "FROM_LON" "TO_LAT"
[8] "TO_LON" "DISTANCE" "FR_OKTMO" "TO_OKTMO" "SAME_REG" "ADM2" "ADM1"
[15] "M2PRICE"
Вот теперь всё норм!
А теперь отсеиваем заново города и мигрантами меньше 5
> MigrMore5 <- f[f$MIGR >5, ]
> citiesMore5 <- unique(MigrMore5$FROM)
> > write.table(citiesMore5, "C:/Users/MSI/Desktop/Diploma/citiesMore5.csv")
Error: unexpected '>' in ">"
> write.table(citiesMore5, "C:/Users/MSI/Desktop/Diploma/citiesMore5.csv")
> length(citiesMore5)
[1] 26
> print(citiesMore5)
[1] Большой Камень Братск Верхотурье Вилючинск Губкинский
[6] Димитровград Дубна Дудинка Заречный Игарка
[11] Качканар Лесной Магадан Мегион Муравленко
[16] Невьянск Новоуральск Норильск Ноябрьск Обнинск
[21] Озерск Саров Снежинск Сосновый Бор Трехгорный
[26] Усть-Илимск
> lnMIGR <- log(MigrMore5$MIGR)
> lnDISTANCE <- log(MigrMore5$DISTANCE)> testMcw <- MigrMore5[MigrMore5$FROM == "Большой Камень", ]
> lnMIGR <- log(testMcw$MIGR)
> lnDISTANCE <- log(testMcw$DISTANCE)
> plot(lnMIGR, lnDISTANCE, xlab = "Distance", ylab = "Migrates from Большой камень")
> regLine <- lm( lnMIGR ~ lnDISTANCE)
> abline(regLine)
М-дяяя... снова не то. Зато 122 серия фейри теил. Ох, хорошо. что мой научник не
читает этот блог! :DDD
Там начнется дикая эпопея с битвами драконов явно на много серий, так что лучше
попишу-ка я диплом :)
_________________________________________________________________________________
Отдельной темой - ссылки на методички и прочие ресурсы в интернетах:
1. подборка книг + ссылки в комментариях:
http://rutracker.org/forum/viewtopic.php?t=4311835
2. ну тут можно кое-что подглядеть:
http://www.ibm.com/developerworks/ru/library/l-r1/index.html
3. А отсюда - ещё скачать:
https://www.mediafire.com/?8b31oji516eam
http://www.inp.nsk.su/~baldin/DataAnalysis/R/
4. Большой русскоязычный блог по R:
http://r-analytics.blogspot.ru/2011/04/blog-post.html#.VXBR3Uatt-z
И ещё один, но он странный:
http://it-investor.blogspot.ru/
5. Документация на русском:
http://mpoctok.narod.ru/r/intro.htm
6. https://github.com/SergeyParamonov/HabraData
7. Курсера (программирование на r) + Интуит (статистика)
http://www.intuit.ru/studies/courses/2297/597/info
http://www.intuit.ru/studies/courses/546/402/infohttps://www.coursera.org/course/rprog
8. Англоязычные ресурсы - мануалы:
http://stat.ethz.ch/R-manual/R-patched/library/utils/html/write.table.html
http://google-styleguide.googlecode.com/svn/trunk/Rguide.xml
http://www.statmethods.net/interface/workspace.html
http://zoonek2.free.fr/UNIX/48_R/02.html
9. Работа с Rstudio
http://statosphere.ru/books-arch/menuevr/153---rstudio--c.html
http://donbas-socproject.blogspot.ru/2009/02/01-r-r.html - блог
10. Ютуб:
https://www.youtube.com/watch?v=fbHqQqtqL_A&index=2&list=PL1gUfWKEcoxDZj6MmYRBeLFOx8_y10lSI
Ну и полезный русскоязычный ресурс-учебник:
http://soc-research.info/blog/rbook.html
Комментариев нет:
Отправить комментарий