Podstawowe operacje w R - część 2.

Operatory i funkcje

Karolina Rowińska

2022-11-17

Zadanie do wykonania

Zadanie wykonaj w kilku etapach:

  1. Zapisz “dane” jako obiekt tibble pod inną nazwą, np. dane2. Porównaj je.
  2. Które ze zmiennych przekształcone powinny być w czynnik (factor)?
  3. Cena nieruchomości (price) jest obecnie integer. Czy to odpowiednie?
  4. Napisz własną funkcję, która wykonywać będzie standaryzowanie zmiennych.
  5. Utwórz nową zmienną “cena” w tibble “dane2”, która będzie zestandaryzowaną price, korzystając z własnej funkcji.
  6. Wykreśl cenę oraz price na wykresach ramkowych obok siebie na jednym ekranie. Różnice?
dane2 <-tibble(dane)
dane2
## # A tibble: 985 × 12
##    street       city    zip state  beds baths sq__ft type  sale_…¹ price latit…²
##    <chr>        <chr> <int> <chr> <int> <int>  <int> <chr> <chr>   <int>   <dbl>
##  1 3526 HIGH ST SACR… 95838 CA        2     1    836 Resi… Wed Ma… 59222    38.6
##  2 51 OMAHA CT  SACR… 95823 CA        3     1   1167 Resi… Wed Ma… 68212    38.5
##  3 2796 BRANCH… SACR… 95815 CA        2     1    796 Resi… Wed Ma… 68880    38.6
##  4 2805 JANETT… SACR… 95815 CA        2     1    852 Resi… Wed Ma… 69307    38.6
##  5 6001 MCMAHO… SACR… 95824 CA        2     1    797 Resi… Wed Ma… 81900    38.5
##  6 5828 PEPPER… SACR… 95841 CA        3     1   1122 Condo Wed Ma… 89921    38.7
##  7 6048 OGDEN … SACR… 95842 CA        3     2   1104 Resi… Wed Ma… 90895    38.7
##  8 2561 19TH A… SACR… 95820 CA        3     1   1177 Resi… Wed Ma… 91002    38.5
##  9 11150 TRINI… RANC… 95670 CA        2     2    941 Condo Wed Ma… 94905    38.6
## 10 7325 10TH ST RIO … 95673 CA        3     2   1146 Resi… Wed Ma… 98937    38.7
## # … with 975 more rows, 1 more variable: longitude <dbl>, and abbreviated
## #   variable names ¹​sale_date, ²​latitude
#ZAMIANA NA WEKTORY
  dane2$type <- as.factor(dane2$type)
  dane2$state <- as.factor(dane2$state)
  
#CENA Z INTEGRALNEJ ZMIENNEJ NA NUMERYCZNĄ 
  dane2$price <- as.numeric(dane2$price)
  
#DATA
  dane2$sale_date <- substr(dane2$sale_date, start=1, stop=10)
  dane2$sale_date <- paste(dane2$sale_date, "2008")
  dane2$sale_date <- tolower(dane2$sale_date)
 
#FUNKCJA NA STANDARYZACJĘ
  funkcja <-function(x) 
  {
    a <- (x - mean(x))/sd(x)
    return(a)
  }
  
dane2$cena <-funkcja(dane2$price)

#WYKRES
par(mfrow=c(1,2))
boxplot(dane2$price)
boxplot(dane2$cena)