Đã có trường hợp như thế này. Đã cố gắng chuyển đổi lớp "mtcars" từ data.frame thành data.table.chuyển đổi cột data.frame thành data.table bị thiếu
"mtcars" dữ liệu:
> mtcars
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
gốc lớp là "data.frame".
> str(mtcars)
'data.frame': 32 obs. of 11 variables:
$ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
$ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
$ disp: num 160 160 108 258 360 ...
$ hp : num 110 110 93 110 175 105 245 62 95 123 ...
$ drat: num 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
$ wt : num 2.62 2.88 2.32 3.21 3.44 ...
$ qsec: num 16.5 17 18.6 19.4 17 ...
$ vs : num 0 0 1 1 0 1 0 1 1 1 ...
$ am : num 1 1 1 0 0 0 0 0 0 0 ...
$ gear: num 4 4 4 3 3 3 3 4 4 4 ...
$ carb: num 4 4 1 1 2 1 4 2 2 4 ...
Chuyển đổi thành data.table. Tìm thấy Cột cho các thương hiệu xe hơi đã biến mất. Tại sao? Làm thế nào để giữ lại cột của thương hiệu?
> mtcars2 <- data.table(mtcars)
> mtcars2
mpg cyl disp hp drat wt qsec vs am gear carb
1: 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
2: 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
3: 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
Muốn có dữ liệu.Với định dạng dữ liệu cuối cùng như sau - có tên cột mới là "Nhãn hiệu" cho cột thương hiệu đầu tiên. Làm thế nào để mã để thêm cột "Nhãn hiệu" từ bộ dữ liệu "mtcars" gốc?
Brands mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
Cảm ơn con trỏ. – KFB
Để thay thế, bạn cũng có thể viết 'data.table (mtcars, keep.rownames =" Brands ")' nếu bạn muốn chọn tên khác mặc định "rn". (CRAN phiên bản 1.10.4 của 'data.table' được sử dụng). – Uwe
@UweBlock Thử nghiệm trên 1.10.5, không tạo cột Nhãn hiệu. Nó làm việc cho setDT, mặc dù ... Tôi đang chỉnh sửa điều đó. – Frank