Mỗi dòng là một quan sát, mỗi cột là một biến: tổ chức dữ liệu BĐS đúng từ đầu là bài 4 của chuyên đề SPSS trong phân tích dữ liệu BĐS. Bài hướng dẫn tổ chức dữ liệu BĐS theo nguyên tắc một dòng là một quan sát, một cột là một biến, có khóa định danh và xử lý đúng dữ liệu lặp theo thời gian.
Biên soạn: ThS. Nguyễn Mạnh Hùng
GV. Khoa QLĐĐ&BĐS – ĐH Nông Lâm TP.HCM
Email: nguyenmanhhung@hcmuaf.edu.vn
Cập nhật 01/10/2026: Nội dung bám tài liệu IBM SPSS Statistics 31. Tên menu, cửa sổ, nút và thuật ngữ bắt buộc của phần mềm được giữ nguyên để người học thao tác đúng; phần diễn giải và ví dụ ưu tiên tiếng Việt. Dữ liệu minh họa là giả lập phục vụ giảng dạy.
1. “Một dòng là gì?” phải trả lời trước khi tạo file
Đơn vị quan sát là đối tượng mà mỗi hàng đại diện. Trong khảo sát, một hàng có thể là một người. Trong danh mục BĐS, một hàng là một tài sản. Trong tin rao, một hàng là một tin. Trong lịch sử giá, một hàng có thể là một tài sản tại một thời điểm. Nếu lẫn các mức này, phép đếm và trung bình sẽ sai.
2. Ví dụ về đơn vị quan sát
| Bộ dữ liệu | Một dòng nên là | Khóa gợi ý |
|---|---|---|
| Khảo sát khách hàng | Một người trả lời | ma_nguoi_tra_loi |
| Danh sách BĐS | Một tài sản/căn | ma_bds |
| Tin rao | Một tin đăng | ma_tin |
| Giao dịch | Một giao dịch | ma_giao_dich |
| Giá theo thời gian | Một BĐS tại một thời điểm | ma_bds + ky |
| Khảo sát hiện trường | Một lần khảo sát | ma_khao_sat |
3. Một cột chỉ nên chứa một khái niệm
Không nên có cột “Thông tin BĐS” chứa “Căn hộ;75m2;2PN;tầng12”. Hãy tách thành loại BĐS, diện tích, số phòng ngủ, tầng. Khi mỗi cột có một ý nghĩa, SPSS mới có thể gán Type và Measure đúng.
4. Không đưa dòng tổng và ghi chú vào vùng dữ liệu
Một bảng Excel đẹp để đọc bằng mắt có thể tệ cho thống kê. Dòng “Quận 1”, dòng “Tổng cộng”, ô gộp, tiêu đề giữa bảng và hàng trống trang trí có thể bị SPSS hiểu như trường hợp hoặc làm sai quá trình nhập.
5. Khóa định danh phải có trước khi ghép
ma_bds không cần mang ý nghĩa số học nhưng cực kỳ quan trọng. Không nên dùng địa chỉ tự do làm khóa duy nhất vì một địa chỉ có thể viết nhiều cách. Với dữ liệu theo thời gian, khóa thường là tổ hợp mã đối tượng và kỳ.
6. Bản ghi lặp chưa chắc là trùng sai
Một BĐS xuất hiện nhiều tháng có thể hoàn toàn hợp lệ. Nếu mục tiêu nghiên cứu biến động giá, lặp theo kỳ là dữ liệu cần giữ. Nếu mục tiêu là ảnh chụp hiện tại, phải chọn một bản ghi theo quy tắc. Không bấm xóa trùng chỉ vì mã BĐS lặp.
7. Khảo sát nhiều câu hỏi: một người vẫn thường là một dòng
Mỗi câu hỏi/biến quan sát là một cột, mỗi người trả lời là một hàng. Các câu Likert có thể có Name ngắn như VT1, VT2 nhưng Label phải mô tả rõ nội dung. Câu chọn nhiều phương án cần thiết kế cấu trúc riêng, không dồn “A,B,C” vào một ô rồi phân tích như biến thông thường.
8. Dạng rộng và dạng dài
Khảo sát một lần thường thuận tiện ở dạng rộng: một người một dòng, nhiều câu là nhiều cột. Dữ liệu lặp theo thời gian thường thuận tiện ở dạng dài: cùng một tài sản có nhiều dòng theo kỳ. Việc chọn dạng nào phải theo câu hỏi và luôn có khóa để chuyển đổi an toàn.
9. Cấu trúc sai và cách sửa
| Cấu trúc sai | Vấn đề | Cách sửa |
|---|---|---|
| Một dòng chứa nhiều căn dưới dạng chuỗi | Nhiều đối tượng trong một dòng | Mỗi căn một dòng hoặc tách bảng |
| gia='3,5 tỷ' | Trộn số và chữ | Chuẩn về một đơn vị số |
| Địa chỉ làm khóa | Khác cách viết | Tạo ma_bds |
| Dòng tổng ở cuối | Bị coi như quan sát | Tách khỏi dữ liệu |
| ma_bds lặp theo tháng rồi xóa | Mất lịch sử | Khóa ma_bds+ky |
10. Hai cấu trúc BĐS cần phân biệt
Với lịch sử giá 1.000 căn trong 8 quý, một căn có thể có 8 dòng. Với khảo sát 1.000 người tại một thời điểm, một người thường chỉ có một dòng. Hai bảng đều “đúng” nếu đơn vị quan sát được định nghĩa rõ. Sai xảy ra khi ghép chúng mà không biết đang đổi mức chi tiết.
Thiết kế dữ liệu cho khảo sát nhà ở
Một người trả lời là một dòng. Các cột gồm mã người, tuổi, nhóm thu nhập, mục đích mua, các câu đánh giá và ý định mua. Không tạo một cột “câu trả lời” rồi mỗi người có nhiều dòng nếu chưa chủ động chọn dạng dữ liệu lặp.
Thiết kế dữ liệu lịch sử giá
Một BĐS có thể có 12 dòng cho 12 tháng. Khóa là ma_bds + thang. Nếu chỉ kiểm trùng theo ma_bds, toàn bộ lịch sử hợp lệ sẽ bị gắn cờ sai.
Bài thực hành
- Tạo cấu trúc khảo sát khách hàng, danh sách tài sản và lịch sử giá.
- Viết rõ một dòng là gì và khóa là gì.
- Tạo bảng sai có dòng tổng, ô gộp, cột trộn số-chữ rồi sửa.
- Nhập bảng đã sửa vào SPSS và kiểm Data View/Variable View.
- Giải thích vì sao mã BĐS không dùng để tính trung bình.
Sản phẩm phải nộp
- Một tệp dữ liệu SPSS đã lưu đúng cấu trúc.
- Ảnh chụp hoặc tệp kết quả thể hiện bước đã thực hiện.
- Một bảng ngắn ghi lỗi phát hiện và cách xử lý.
- Một đoạn giải thích bằng tiếng Việt: vì sao thao tác đó phù hợp với dữ liệu BĐS.
Những lỗi thường gặp
- Một dòng chứa nhiều đối tượng.
- Một cột chứa nhiều khái niệm.
- Không có mã định danh.
- Dùng địa chỉ tự do làm khóa duy nhất.
- Xóa bản ghi lặp trước khi hiểu lý do.
- Đưa dòng tổng hoặc tiêu đề nhóm vào dữ liệu.
Sổ tay thao tác nhanh
- Viết câu “một dòng là…” ở đầu tài liệu dữ liệu.
- Tạo khóa trước khi ghép dữ liệu.
- Tách đơn vị đo khỏi ô dữ liệu và ghi trong Label/tài liệu.
- Không xóa lặp nếu chưa phân biệt lỗi trùng với lịch sử hợp lệ.
Phản biện chéo tại lớp
Một nhóm thực hiện thao tác; nhóm khác không được hỏi “bấm nút nào” mà phải hỏi: dữ liệu đầu vào là gì, mỗi dòng đại diện cho gì, biến nào được dùng, thuộc tính biến có đúng không, kết quả có thể sai trong trường hợp nào. Người thực hiện chỉ hoàn thành khi giải thích được cả thao tác và ý nghĩa.
Sau phản biện, nhóm ghi ba điểm: điều làm đúng, lỗi phát hiện và biện pháp ngăn lỗi lặp lại. Mục tiêu là hình thành năng lực sử dụng SPSS trong BĐS, không phải khả năng nhớ vị trí menu.
Tình huống kiểm tra cuối bài
Giảng viên giao một tệp BĐS có 120 dòng và 12 biến để kiểm nội dung của bài 4. Sinh viên không sửa trực tiếp ngay mà ghi trạng thái ban đầu, xác định điều cần kiểm, sau đó mới thao tác. Kết thúc phải nộp tệp sau xử lý cùng bảng đối chiếu trước – sau.
Một thao tác đúng nhưng không giải thích được lý do, không xác định được ảnh hưởng tới phân tích tiếp theo hoặc không giữ đường quay lại dữ liệu trước sửa vẫn chưa đạt.
Phiếu tự kiểm
| Câu hỏi | Đạt khi |
|---|---|
| Mục tiêu bài đã rõ? | Giải thích được việc đang kiểm/thực hiện. |
| Dữ liệu có đường quay lại? | Có bản gốc hoặc phiên trước sửa. |
| Thao tác có kiểm chứng? | Có so sánh trước – sau. |
| Ý nghĩa BĐS có rõ? | Không chỉ đọc tên menu. |
| Người khác làm lại được? | Có tệp và ghi chú cần thiết. |
Ghi nhớ trong 30 giây
- Cấu trúc dữ liệu quyết định chất lượng phân tích trước cả kiểm định.
- Một dòng phải có một đơn vị quan sát rõ.
- Một cột nên chứa một biến rõ.
- Bản ghi lặp có thể là lịch sử hợp lệ.
Nguồn tham khảo
- IBM SPSS Statistics 31, Core System User’s Guide.
- IBM SPSS Statistics 31, Variable properties.
Bài tiếp theo: “Name, Label, Values, Missing và Measure: khai báo biến sao cho không nhầm?”.
Phiếu luyện tập bổ sung 1
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 2
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 3
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 4
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 5
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 6
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 7
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 8
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 9
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 10
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 11
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 12
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 13
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 14
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 15
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 16
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 17
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.
Phiếu luyện tập bổ sung 18
Tạo một bản dữ liệu nhỏ có ba lỗi liên quan trực tiếp đến nội dung bài, đổi tệp cho bạn học và yêu cầu người kia phát hiện mà không biết trước vị trí. Sau đó so sánh quy trình phát hiện, lý do sửa và cách xác nhận sau sửa. Bài tập nhằm rèn thói quen kiểm dữ liệu có hệ thống thay vì chỉ sửa những gì nhìn thấy bằng mắt.
Mỗi lỗi phải có bốn thông tin: hiện trạng, nguyên nhân có thể, thao tác xử lý và cách kiểm lại. Nếu chưa xác định được nguyên nhân, đánh dấu cần xác minh thay vì tự thay giá trị.