Đường liên kết dữ liệu:
Tập dữ liệu này ban đầu được zameen.com thu thập dưới dạng dữ iệu giá nhà ở Pakistan và đã được sử dụng một số kỹ thuật làm sạch dữ liệu để cung cấp tập dữ liệu đặc biệt cho Thành phố Islamabad
Mô tả dữ liệu: Bộ dữ liệu ta lấy được gồm có 153430 quan sát và 15 biến:
Property type: là các loại tài sản. Trong phần này, chúng ta có 6 loại khác nhau: House, FarmHouse, Upper Portion, Lower Portion, Flat, Room
Price: là giá của các loại tài sản
Location: về các loại vị trí khác nhau trong mỗi thành phố.
City: thành phố. Trong bộ dữ liệu này có 5 thành phố:Lahore, Karachi, Faisalabad, Rawalpindi, Islamabad
Province_name: tên tỉnh
Latitude: chiều rộng của căn nhà
Longitde: Chiều dài của căn nhà
Baths: số phòng tắm
Purpose: mục đích của căn hộ
Bedrooms: số phòng ngủ
Date_added: Ngày được thêm vào
Agency: hãng
Agent: đại lý
Area in Marla: khu vực ở Marla
Biến số thứ tự
library(readxl)
data <- read_excel("D:/FEDA_dataset 1.xlsx")
str(data)## tibble [153,430 × 15] (S3: tbl_df/tbl/data.frame)
## $ ...1 : num [1:153430] 0 1 2 3 4 5 6 7 8 9 ...
## $ property_type: chr [1:153430] "Flat" "Flat" "House" "House" ...
## $ price : num [1:153430] 10000000 6900000 16500000 43500000 7000000 34500000 27000000 7800000 50000000 40000000 ...
## $ location : chr [1:153430] "G-10" "E-11" "G-15" "Bani Gala" ...
## $ city : chr [1:153430] "Islamabad" "Islamabad" "Islamabad" "Islamabad" ...
## $ province_name: chr [1:153430] "Islamabad Capital" "Islamabad Capital" "Islamabad Capital" "Islamabad Capital" ...
## $ latitude : num [1:153430] 3.37e+06 3.37e+07 3.36e+16 3.37e+13 3.35e+07 ...
## $ longitude : num [1:153430] 7.30e+06 7.30e+07 7.29e+07 7.32e+12 7.33e+07 ...
## $ baths : num [1:153430] 2 3 6 4 3 8 8 2 7 5 ...
## $ purpose : chr [1:153430] "For Sale" "For Sale" "For Sale" "For Sale" ...
## $ bedrooms : num [1:153430] 2 3 5 4 3 8 8 2 7 5 ...
## $ date_added : POSIXct[1:153430], format: "2019-02-04" "2019-05-04" ...
## $ agency : chr [1:153430] "Self" "Self" "Self" "Self" ...
## $ agent : chr [1:153430] "Self" "Self" "Self" "Self" ...
## $ Area_in_Marla: num [1:153430] 4 5.6 8 40 8 32 20 6.2 20 20 ...
table(cut(data$price,4))##
## (-2e+06,5e+08] (5e+08,1e+09] (1e+09,1.5e+09] (1.5e+09,2e+09]
## 153367 55 7 1
Tạo bảng tần số cho dữ lệu ‘Giá nhà’ được chia thành 4 tổ ở trên, ta dùng câu lệnh trên R, sau đó ta được kết quả là những lần xuất hiện của từng tổ được chia ở trên
table(cut(data$latitude,4))##
## (-3.37e+13,8.43e+15] (8.43e+15,1.69e+16] (1.69e+16,2.53e+16]
## 138757 0 891
## (2.53e+16,3.38e+16]
## 13782
Tạo bảng tần số cho dữ lệu ‘Chiều rộng của ngôi nhà’ được chia thành 4 tổ ở trên, ta dùng câu lệnh trên R, sau đó ta được kết quả là những lần xuất hiện của từng tổ được chia ở trên
table(cut(data$longitude,4))##
## (-8.02e+12,2e+15] (2e+15,4.01e+15] (4.01e+15,6.01e+15] (6.01e+15,8.02e+15]
## 118593 0 1 34836
Tạo bảng tần số cho dữ lệu ‘Chiều dài của ngôi nhà’ được chia thành 4 tổ ở trên, ta dùng câu lệnh trên R, sau đó ta được kết quả là những lần xuất hiện của từng tổ được chia ở trên
Phân tổ cho dữ liệu ‘Giá’ không đều và đặt tên theo từng tổ ‘nhỏ’,‘vừa’,‘lớn’ sau đó gán vào biến slcoded, ta được kết quả là:
data$slcoded <- cut(data$price, breaks = c(189, 8100, 3330000, 5273000),labels = c('nhỏ','vừa','lớn'))table(data$slcoded)##
## nhỏ vừa lớn
## 195 48424 9919
Tạo bảng tần số cho dữ lệu ‘Giá’ được chia thành tổ không đều ở trên, ta dùng câu lệnh trên R, sau đó ta được kết quả là những lần xuất hiện của từng tổ ‘nhỏ’,‘vừa,’lớn’
Để tách dữ liệu của loại tài sản House, ta sử dụng câu lệnh trên R như sau:
House <- subset(data,data$property_type =="House")
head(House)## # A tibble: 6 × 16
## ...1 property_type price location city province_name latitude longitude
## <dbl> <chr> <dbl> <chr> <chr> <chr> <dbl> <dbl>
## 1 2 House 16500000 G-15 Isla… Islamabad Ca… 3.36e16 7.29e 7
## 2 3 House 43500000 Bani Gala Isla… Islamabad Ca… 3.37e13 7.32e12
## 3 4 House 7000000 DHA Defen… Isla… Islamabad Ca… 3.35e 7 7.33e 7
## 4 5 House 34500000 Ghauri To… Isla… Islamabad Ca… 3.36e16 7.31e 7
## 5 6 House 27000000 Korang To… Isla… Islamabad Ca… 3.36e 7 7.31e15
## 6 8 House 50000000 DHA Defen… Isla… Islamabad Ca… 3.35e 7 7.31e 7
## # ℹ 8 more variables: baths <dbl>, purpose <chr>, bedrooms <dbl>,
## # date_added <dttm>, agency <chr>, agent <chr>, Area_in_Marla <dbl>,
## # slcoded <fct>
Ta sử dụng câu lệnh trên R như sau:
FarmHouse <- subset(data,data$property_type =="FarmHouse ")
head(FarmHouse)## # A tibble: 0 × 16
## # ℹ 16 variables: ...1 <dbl>, property_type <chr>, price <dbl>, location <chr>,
## # city <chr>, province_name <chr>, latitude <dbl>, longitude <dbl>,
## # baths <dbl>, purpose <chr>, bedrooms <dbl>, date_added <dttm>,
## # agency <chr>, agent <chr>, Area_in_Marla <dbl>, slcoded <fct>
Ta sử dụng câu lệnh trên R như sau:
Flat <- subset(data,data$property_type =="Flat")
head(Flat)## # A tibble: 6 × 16
## ...1 property_type price location city province_name latitude longitude
## <dbl> <chr> <dbl> <chr> <chr> <chr> <dbl> <dbl>
## 1 0 Flat 10000000 G-10 Isla… Islamabad Ca… 3367989 7301264
## 2 1 Flat 6900000 E-11 Isla… Islamabad Ca… 33700993 72971492
## 3 7 Flat 7800000 E-11 Isla… Islamabad Ca… 33698244 72984238
## 4 10 Flat 35000000 Diplomati… Isla… Islamabad Ca… 33728873 73119628
## 5 11 Flat 48000000 Diplomati… Isla… Islamabad Ca… 33728873 73119628
## 6 13 Flat 13500000 DHA Defen… Isla… Islamabad Ca… 33538087 73164536
## # ℹ 8 more variables: baths <dbl>, purpose <chr>, bedrooms <dbl>,
## # date_added <dttm>, agency <chr>, agent <chr>, Area_in_Marla <dbl>,
## # slcoded <fct>
mean(data$price)## [1] 18418205
var(data$price)## [1] 1.313854e+15
sau khi thực hiện câu lệnh trên R, ta có được kết quả: phương sai quá lớn, cho thấy các số trong dữ liệu của biến ‘Giá’ nằm cách xa giá trị trung bình và có biến động lớn
sd(data$price)## [1] 36247125
Độ lệch chuẩn là thước đo độ phân tán hoặc trải rộng của các điểm dữ liệu xung quanh giá trị trung bình.
Nó cộng tất cả các giá trị riêng lẻ trong cột để cung cấp tổng số tiền.
sum(data$price)## [1] 2.825905e+12
aggregate(data$price, list(data$property_type), FUN = 'var')## Group.1 x
## 1 Farm House 7.751870e+15
## 2 Flat 1.335805e+14
## 3 House 1.819525e+15
## 4 Lower Portion 2.502029e+13
## 5 Penthouse 7.154594e+14
## 6 Room 1.834242e+13
## 7 Upper Portion 4.639333e+13
aggregate(data$price, list(data$property_type), FUN = 'sd')## Group.1 x
## 1 Farm House 88044704
## 2 Flat 11557702
## 3 House 42655894
## 4 Lower Portion 5002028
## 5 Penthouse 26748072
## 6 Room 4282805
## 7 Upper Portion 6811265
aggregate(data$price, list(data$property_type), FUN = 'sum')## Group.1 x
## 1 Farm House 3.824008e+10
## 2 Flat 2.875747e+11
## 3 House 2.454937e+12
## 4 Lower Portion 1.184969e+10
## 5 Penthouse 6.432138e+09
## 6 Room 3.079114e+08
## 7 Upper Portion 2.656397e+10
aggregate(data$price, list(data$property_type), FUN = 'mean')## Group.1 x
## 1 Farm House 61086385.0
## 2 Flat 8381903.8
## 3 House 25402116.3
## 4 Lower Portion 1428878.5
## 5 Penthouse 16882252.0
## 6 Room 464421.4
## 7 Upper Portion 2122570.3
aggregate(data$price, list(data$property_type), FUN = 'summary')## Group.1 x.Min. x.1st Qu. x.Median x.Mean
## 1 Farm House 0.0 14000000.0 37500000.0 61086385.0
## 2 Flat 1.0 110000.0 5500000.0 8381903.8
## 3 House 0.0 6000000.0 14000000.0 25402116.3
## 4 Lower Portion 44.0 27000.0 45000.0 1428878.5
## 5 Penthouse 15000.0 1200000.0 7500000.0 16882252.0
## 6 Room 1000.0 10000.0 15000.0 464421.4
## 7 Upper Portion 5000.0 30000.0 50000.0 2122570.3
## x.3rd Qu. x.Max.
## 1 72375000.0 884000000.0
## 2 11000000.0 225000000.0
## 3 28000000.0 2000000000.0
## 4 80000.0 70000000.0
## 5 20000000.0 150000000.0
## 6 23750.0 90000000.0
## 7 110000.0 375000000.0
Sau khi thực hiệ trên trên R nó sẽ cung cấp các tóm tắt thống kê như tối thiểu, phần tư thứ nhất, trung bình, trung vị, phần tư thứ 3 và tối đa cho mỗi nhóm.