2011-11-18 26 views

Trả lời

48

Đặt options(stringsAsFactors = FALSE) vào đầu phiên R hoặc trong .RProfile của bạn.

Như ý kiến ​​bên dưới có thể đề xuất, stringsAsFactors là một chủ đề gây tranh cãi trong cộng đồng R. Làm thế nào bạn thấy khó chịu khi tìm giá trị mặc định này có thể phụ thuộc phần nào vào thời gian bạn sử dụng R để phù hợp với nhiều mô hình thống kê "chuẩn" (lm, glm, v.v ...). Nhiều người trong số những mô hình phù hợp và chức năng liên quan được xây dựng xung quanh bằng cách sử dụng các loại dữ liệu yếu tố.

Nếu bạn dành phần lớn thời gian để thực hiện các loại phân tích dữ liệu "chung chung" khác, bạn có thể thấy điều này gây khó chịu mặc định hơn.

Nó được coi là nguy hiểm đối với tập hợp toàn cầu stringsAsFactors = FALSE vì những lý do được đề cập bên dưới: nó có thể gây nhầm lẫn đáng kể khi chia sẻ mã. Thật vậy, ngay cả khi bạn làm việc chủ yếu một mình, tham gia vào cộng đồng trực tuyến như StackOverflow có thể phức tạp nếu bạn nhấn mạnh vào chạy R với stringsAsFactors = FALSE: câu trả lời của bạn cho một câu hỏi có thể không hoạt động cho OP, hoặc bạn có thể không tái tạo lỗi nhìn thấy!

Tất nhiên, mọi người đều có thể tự mình lựa chọn cách tốt nhất để quản lý những rủi ro này cho bản thân.

+24

Có tập hợp này trong '.Rprofile' của bạn có thể có một chút rủi ro, vì mã của bạn không còn di động nữa. Vì tôi đã dạy rất nhiều, tôi quyết định rằng sẽ dễ dàng quên đi tùy chọn này khi chuyển mã. – csgillespie

+11

nó thực sự phải là mặc định. giết chết năng suất của tôi khi lỗi lạ, khó gỡ lỗi xảy ra vì nó. chỉ bây giờ tôi đọc âm mưu các thông số từ một tập tin, quên nó, và các lô đã sai trong khi vẫn hiển thị tiêu đề và mô tả trục phải ... –

+0

nó nên được mặc định trong chuyển đổi đó như as.data.frame() nên duy trì dữ liệu cơ bản cấu trúc của các đối tượng mà họ đang chèn vào dataframe. –

Các vấn đề liên quan