hãy tha thứ cho tôi nếu câu hỏi của tôi khá cơ bản. Tôi đã tạo một khung dữ liệu trống theo df <- data.frame()
và rõ ràng là khung dữ liệu là NULL (trống). khi tôi cố gắng kiểm tra xem khung dữ liệu có trống không bởi is.null(df)
, kết quả là FALSE. Có sự khác biệt nào giữa NULL
và empty
trong R. Trong trường hợp này nếu khung dữ liệu không phải là NULL
thì nội dung trong khung dữ liệu trống là gì và khi nào sẽ là NULL
. Cảm ơnTại sao một khung dữ liệu trống thất bại trong một bài kiểm tra is.null()?
Trả lời
df
không phải là NULL vì nó là khung dữ liệu và do đó có một số thuộc tính được xác định. Ví dụ, nó có một lớp. Và bạn có thể lấy số hàng trong khung dữ liệu bằng cách sử dụng nrow(df)
, ngay cả khi kết quả sẽ xảy ra bằng không. Do đó, số hàng cũng được xác định rõ.
Như fas như tôi biết, không có lệnh is.empty
trong R. căn cứ gì bạn có thể làm được, ví dụ, sau đây
is.data.frame(df) && nrow(df)==0
này sẽ cung cấp TRUE cho một khung dữ liệu rỗng (có nghĩa là, một không có hàng) và sai khác.
Lý do kiểm tra is.data.frame
trước tiên là nrow
có thể gây ra lỗi, nếu nó được áp dụng cho bất kỳ điều gì khác ngoài khung dữ liệu. Nhờ &&
, nrow(df)
sẽ chỉ được đánh giá nếu df
là một khung dữ liệu.
Bạn có thể kiểm tra xem 'tên (df)' có trống không ('ký tự (0)'). – cphlewis
kiểm tra các hàng df bằng 'nrow (df) == 0' rõ ràng là' 0' và không cần phải viết 'is.data.frame (df)' –
Tùy thuộc vào cách bạn xác định rỗng, bạn không thể chỉ kiểm tra 'tên (df)'. Khung dữ liệu sau 'df <-data.frame (a = số(), b = số())' không có nội dung, nhưng tên vẫn được xác định. Vì vậy, định nghĩa của tôi sẽ nói rằng nó có sản phẩm nào, bạn sẽ nói nó không phải. Tất cả một vấn đề của những gì bạn acutally muốn kiểm tra, tất nhiên. – Stibu
data.frame()
tạo đối tượng có khung dữ liệu . Vì đối tượng tồn tại, is.null
sẽ trả lại FALSE. Biến số NULL
không có lớp và không có nội dung.
'is.null' sẽ trả về 'FALSE' vì đối tượng không phải là NULL; vì đối tượng * tồn tại *, 'is.null' sẽ không trả về" Lỗi: không tìm thấy đối tượng. " – cphlewis
Câu trả lời ở trên là chính xác, is.na và is.null không thể phát hiện giá trị rỗng trong R. Đây là những gì tôi sẽ làm để tính số lượng giá trị trống trong khung dữ liệu của bạn 'df' trong trường hợp này .
is.na (df [df == '']) < - TRUE # chỉ thay NA cho giá trị trống trong df.
tổng (is.na (df)) # sẽ cung cấp cho bạn ý tưởng số lượng giá trị trống có trong 'df' của bạn.
Hy vọng điều này hữu ích.
Tôi không nghĩ đó thực sự là những gì OP hỏi. Tôi không muốn ngăn cản bạn trả lời các câu hỏi trên SO, nhưng câu trả lời này (trong khi câu trả lời * câu hỏi của ai đó) quá xa câu hỏi có ích ... –
- 1. Tại sao đối tượng MongooseJS của tôi thất bại trong bài kiểm tra bình đẳng?
- 2. Tại sao kiểm tra CollectionAssert.AreEquivalent() này lại thất bại?
- 3. CasperJs + jenkins: khi một bài kiểm tra thất bại, cách lấy tất cả thông tin về bài kiểm tra này
- 4. Tại sao mod_wsgi không thể ghi dữ liệu? IOError: thất bại trong việc ghi dữ liệu
- 5. FlowType: null kiểm tra thất bại
- 6. Tại sao nhiều yêu cầu GET thất bại trong kiểm tra thước đo góc?
- 7. Tìm các mẫu thất bại trong Bài kiểm tra Đơn vị
- 8. django - "manag.py kiểm tra" thất bại "bảng đã tồn tại"
- 9. nghiệm thất bại của một bài tập với unittest
- 10. Làm thế nào để viết một bài kiểm tra đơn vị scala để đảm bảo sự thất bại?
- 11. Numpy isnan() thất bại trên một mảng float (từ khung dữ liệu gấu trúc áp dụng)
- 12. Kiểm tra xem khung dữ liệu có tồn tại không
- 13. Tại sao xóa (DictionaryInstance [key]); Thất bại?
- 14. Tạo khung dữ liệu trống với chỉ mục từ một khung dữ liệu khác
- 15. Dự kiến kiểm tra xây dựng thất bại trong CMake
- 16. Thêm hàng trống vào một khung dữ liệu
- 17. Thông báo về/kiểm tra thất bại SCM trong Jenkins
- 18. Truyền dữ liệu JUnit giữa các bài kiểm tra
- 19. Gỡ lỗi đơn vị kiểm tra thất bại do một ngoại lệ StackOverflow
- 20. Cách thêm cột trống vào một khung dữ liệu?
- 21. Tại sao bài đăng không thành công trong bài kiểm tra chức năng Rails của tôi?
- 22. should.js không gây ra kiểm tra mocha thất bại
- 23. Selenium IDE - bộ kiểm tra dừng chạy trên thất bại
- 24. Kiểm tra cột giống hệt nhau trong một khung dữ liệu trong R
- 25. MSTest ExpectedException thất bại
- 26. Làm thế nào để thực hiện các kiểm tra giữ chỗ trống cố tình thất bại trong Mocha?
- 27. AudioFlinger là gì và tại sao nó thất bại TONE_PROP_ACK?
- 28. Tại sao các bài kiểm tra trong các lớp dẫn xuất chạy lại các bài kiểm tra lớp cha mẹ?
- 29. Chức năng được gọi sau khi lời hứa được giải quyết nhưng Jasmine thất bại trong bài kiểm tra. Tại sao?
- 30. Làm thế nào để hiển thị các bài kiểm tra của tôi vượt qua/thất bại trong Github?
'df' tồn tại, vì vậy nó không phải là rỗng. 'is.empty (df)' là TRUE, mặc dù. – cphlewis
@cphlewis Từ đâu đến 'is.empty'? –
Rất tiếc, xin lỗi, tôi đoán là từ 'spatstat'! – cphlewis