Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
YayınlayanUfuk Ağca Değiştirilmiş 8 yıl önce
1
İTÜ Uçak ve Uzay Bilimleri Fakültesi Meteoroloji Mühendisliği Bölümü uubf.itu.edu.tr TÜBİTAK (111Y319) COST (ES1004) www.havakalitesi.itu.edu.tr toros at itu.edu.tr Rstudio www.rstudio.org R www.r-project.org 1
2
-http://www.r-project.org/http://www.r-project.org/ - İstatistik hesaplamalar ve grafikler için geliştirilmiş bir yazılımdır. - R istatistik (doğrusal ve doğrusal olmayan modelleme, klasik istatistik testleri, zaman-serileri analizi, sınıflandırma, kümeleme, …) ve grafik teknikler vs çok geniş alanı vardır. - Açık kaynak kodludur. - Açık kaynak olduğu için her gün kullanıcı sayısı artmaktadır. - Katkı yapan sayısı artmaktadır - R kaynak kodları, Özgür Yazılım Vakfı GNU Genel Kamu Lisansı altında Özgür Yazılım olarak kullanılabilir. - Linux, UNIX, Windows, MacOS vb sistemlerde çalışır. R 2
3
- R bütünleşik bir yazılım olduğu için veriler, hesaplamalar ve grafik gösterimleri vardır. - Etkili bir veri işleme ve depolamaya sahiptir, - Dizi, matris hesaplamaları kolaylıkla yapılabilir. - Basit ve etkili bir programlama dilidir. - Gerçek bir bilgisayar dili etrafında tasarlanmış ve kullanıcıların yeni fonksiyonlar tanımlayarak ek işlevsellik eklemek için izin verir. - C, C ++ ve Fortran kodu bağlantılı olabilir. R 3
4
- Ücretsiz… - İhtiyacınızın büyük çoğunluğu için yazılmış hazır işlevler ve kütüphaneler mevcut. - R, bir programla dilidir. - Kodların derlenmiş olması gerekmez - Etkileşimli ekranlar vardır - R’nin eksileri ise derlenen dillere göre daha yavaş çalışır Niçin R? 4
5
- RStudio açık kaynak kodlu ve ticari sürümleri mevcuttur. - Masaüstünde (Windows, Mac ve Linux), RStudio Server, RStudio Sunucu Pro (Debian / Ubuntu, RedHat / CentOS ve SUSE Linux) bağlı bir tarayıcıda çalışır. 5
6
-http://www.rstudio.com/http://www.rstudio.com/ Betikler için kod yazım alanı, dosyadan açma veya kaydetme Çalışma alanı, değişkenler, dosyalar, son komutlar vs Çizim sonuçları, paket yükleme ve yardım alanı Anlık komut yazma ve çalıştırma alanı R ile aynı 6
7
Dosyaları açmak, kaydetmek, kapatmak Paketleri kurmak, Paketleri kullanmak için ayrıca her seferinde yüklemek gerekir. Ayarlar yapmak 7
8
Hangi klasörde çalışıyor? >getwd() [1] "D:/Documents/Huseyin/projeler/AnkaraCED/veriler“ Çalışma klasörünü nasıl değiştiririm? >setwd ("D:/Documents/Huseyin/projeler/AnkaraCED/veriler/Eylul2014Veri/") Hesap Makinesi gibi kullanabilir miyim? >4+3-9 [1] -2 >6*10+2^4 [1] 76 >90-9/9*(23-7) [1] 74 8
9
Aritmetik ve mantık işlem işaretleri nelerdir? + toplama - çıkarma * çarpma / bölme % mod (kalan) ^ üst ! değil & ve | veya == eşittir != eşit değildir Daha fazla bilgi için >?Syntax >?Comparison deneyebilirsiniz 9
10
R içinde – help( ) – help(sqrt) – ? – ?sum – ?? – ??air Web sayfasından – www.rseek.org www.rseek.org – CRAN – Google’da kelime ve CRAN, sum cran gibi Nasıl yardım alabilirim? 10
11
Nasıl değişkenler oluşturabilirim? Verilerin kabına isim vermek! Değişken isimleri R için özel anlamı olmayan herşey Degisken = veri > sey=4 > sey [1] 4 11
12
R’de Veri çeşitleri nelerdir? Vektör o numeric floating point integer o logical o character İşlevler listeler > a <- 101 > length(a) [1] 1 > a[1] [1] 101 > a[2] [1] NA > a[2] <- 202 > length(a) [1] 2 12
13
Diziler / Matrisler 5x1’lik dizi 4x4’lük matris 13
14
Diziler array(data=NA, dim=length(data), dimnames=NULL) > x <- array(1:9) > x [1] 1 2 3 4 5 6 7 8 9 > x <- array(1:9,c(3,3)) > x <- 1:64 > dim(x) <- c(2,4,8) #dim() Vektörü diziye dönüştürür. > is.array(x) [1] TRUE http://www.endmemo.com/program/R/ [,1] [,2] [,3] [1,] 1 4 7 [2,] 2 5 8 [3,] 3 6 9 14
15
Diziler x x[1,,] x[1,2,] x[1,2,1] http://www.endmemo.com/program/R/ 15
16
Tarih date() Sys.time() Sys.Date() class(date()) class(Sys.Date()) class(Sys.time()) x <- "19:18:05" y <- strptime(x,"%H:%M:%S") y class(y) y$sec http://www.endmemo.com/program/R/ 16
17
Matrisler Matris tanımlama A <- matrix(c(3,5,7,1,9,4),nrow=3,ncol=2,byrow=TRUE) A Matris satır ve sütun sayısı rA <- nrow(A) rA cA <- ncol(A) cA Matirisin transposesi B <- t(A) B http://www.endmemo.com/program/R/ 17
18
Matrisler Matris çarpımı C <- A * A C Matris toplamı C <- A + A C http://www.endmemo.com/program/R/ 18
19
Matrisler Matris verilerini dosyadan okutmak için yandaki verileri sortmatrix.csv dosyasına yazınız. x <- read.csv("sortmatrix.csv",header=T,sep=","); x <- x[order(x[,4]),]; x <- write.table(x,file="tp.txt",sep=",") http://www.endmemo.com/program/R/,t1,t2,t3,t4,t5,t6,t7,t8 r1,1,0,1,0,0,1,0,2 r2,1,2,5,1,2,1,2,1 r3,0,0,9,2,1,1,0,1 r4,0,0,2,1,2,0,0,0 r5,0,2,15,1,1,0,0,0 r6,2,2,3,1,1,1,0,0 r7,2,2,3,1,1,1,0,1 19
20
20 library(openair) setwd("D:/belgelerim/HUSEYIN") getwd() # RUZGAR Gulu mydata <- import("balikesir_saatlik_veri.csv", date = "Tarih",sep=",") polarPlot(mydata, pollutant = 'SO2', type = 'default', main="Balıkesir")
21
21 # 2 Zaman Serisi TREND mydata <- import("balikesir_saatlik_veri.csv", date = "Tarih",sep=",") smoothTrend(mydata, pollutant = "SO2", deseason = TRUE, statistic = "percentile", percentile = c(25, 50, 75, 95), ylab = "ug/m3")
22
22 #Boxplot mydata <- import("balikesir_saatlik_veri.csv", date="Tarih",sep=",") Mydata<-mydata[,2:3] Boxplot(mydata, ylab=“ug/m3”,xlab=“” title(main=“balikesir”
23
23 boxplot(veri$PM10,veri$PM2.5, veri$SO2,veri$NO,veri$NO2,veri$NOX,veri$CO, varwidth=TRUE, notch=TRUE, staplewex=0.5, names=c("PM10","PM2.5", "SO2","NO","NO2","NOX","CO"), main="A.BAHCELIEVLER", xlab="Kirleticiler", ylab="ug/m3", y="log",outcex=1.0, outpch=18,outcol="red", boxcol="black", boxfill="lavenderblush2", whisklty=10, boxwex=0.7, whiskcol="black", cex.lab=1.0, cex.axis=1.0, staplelwd=2, staplecol="red", medcol="black") #boxplot2
24
24
25
25 #HİSTOGRAM mydata<-read.table(file=" balikesir_saatlik_veri.csv ",sep=";",header=TRUE,row.names=NULL) hist(mydata$PM10, main=“BALIKESIR PM10 YOGUNLUK- DAGILIMI",col.main="RED",xlab = "PM10 (ug/m3)",ylab = "DATA NUMBER",col="light blue")
26
26
27
27 #POLLUTIONROSE mydata <- import("balikesir_saatlik_veri.csv", date="Tarih",sep=",",header=TRUE,row.names=NULL) pollutionRose(mydata, pollutant="PM10", type="default")
28
28 BALIKESIR-PM10
29
29 #sezonluk PollutıonRose pollutionRose(mydata, pollutant="PM10", type="season",main="balikesir" )
30
30 #Sezonluk rüzgargülü polarPlot(mydata,pollutant="SO2",type="season",main="balikesir")
31
31 x <- import("balikesir_saatlik_veri.csv", date = "Tarih",sep=",") smoothTrend(x, pollutant = "SO2", deseason = TRUE, statistic = "percentile", percentile = c(25, 50, 75, 95), ylab = "ug/m3") timePlot(x, pollutant = c("PM10","SO2"), cols = c("blue","orange"), lwd = c("1","1"), group = FALSE)
32
32 timePlot(x, pollutant = c("PM10","SO2"), cols = c("blue","orange"), lwd = c("1","1"), group = FALSE, smooth = TRUE, avg.time ="month") timeVariation(x, pollutant = c("PM10","SO2")) timeVariation(x, pollutant = "SO2", cols = "darkgreen") mydata <- import("balikesir_saatlik_veri.csv", date = "Tarih",sep=",") scatterPlot(mydata, x = "PM10", y = "SO2", spline = "TRUE")
33
33 #Sonuçları DOSYAYA YAZDIRMAK ICIN plot.new() #start a new plot png() dev.copy(png,"Balikesir_SO2_ruzgar_gulu.png",width=4,h eight=4,units="in",res=300) mydata <- import("balikesir_saatlik_veri.csv", date = "Tarih",sep=",") polarPlot(mydata, pollutant = 'SO2', type = 'default', main="Balıkesir") dev.off()
34
Kod algoritması nasıl bir şeydir? xkcd #844 34
35
Programlama yapısı nasıl bir şeydir? if... then... Else Belli sonuca göre ne iş yapılacağına karar verme for... while... Belli satırların şartlar sağlanıncaya kadar tekrarı Sırayla yukarıdan aşağı işlemler 35
36
Döngüye örnek verir misiniz? Belli satır veya satırların şartlar sağlanılıncaya kadar tekrarı for (i in 1:4) { print(i) } {} içinin 20 defa tekrar yapılır. > for (i in 1:4) + {print(i)} [1] 1 [1] 2 [1] 3 [1] 4 36
37
Döngüye örnek verir misiniz? # Ölçüm sonuçlarının değer1 kutusuna atanması > deger1 = c(0.1, 0.05, 0.003, 0.4, 0.9) > deger1 [1] 0.100 0.050 0.003 0.400 0.900 # Deger2 kutusuna 1’den 5’e kadar sayı atamak deger2 = 1:5 # Deger1’in log’larını deger2’ye atamak for(i in 1:length(deger1)) { deger2[i] = log10(deger1[i]) } > deger2 [1] -1.00000000 -1.30103000 -2.52287875 -0.39794001 - 0.04575749 37
38
While Loop döngüsü Belli satır veya satırların şartlar sağlanılıncaya kadar tekrarı while (stop != TRUE) {... code... } stop = TRUE Note: Eğer şartlar oluşmaz ise program kapatılıncaya kadar döngü devam eder. 38
39
While Loop döngüye örnek verir misiniz? > x =1 > while(x < 5) {x <-x+1; print(x);} [1] 2 [1] 3 [1] 4 [1] 5 > x =1 > while(x < 5) {x <- x+1; if (x == 3) break; print(x); } [1] 2 > x <- 1 > while(x < 5) {x <- x+1; if (x == 3) next; print(x);} [1] 2 [1] 4 [1] 5 39
40
Functions Bits of code that do one thing and (preferrably) do it well Functions break up your code into more manageable and reusable parts Defining (e.g. in a script): fun = function(arguments) {... code... } Calling: party = fun(food,beer,folks) 40
41
A Simple Function fn1 <- function(N) { for(i in as.numeric(1:N)) { y <- i*i } } fn2 <- function(N) { i = 1 while(i <= N) { y <- i*i i <- i + 1 } system.time(fn1(60000)) system.time(fn2(60000)) 41
42
Student’s T-test 42
43
Comparing the Means of Two Groups Sleep dataset in R is a comparison of two students sleep habits 43
44
Doing a Student’s T-test t.test(sleep[1:10,’extra’],sleep[11:20,’extra’]) or t.test(extra ~ group, data = sleep) 44
45
Correlation 45
46
Testing for a Correlation cor.test(c(1:10), c(11:20)) 46
47
Testing for a Correlation cor.test(c(1:10), -c(11:20)) 47
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.