Saya memiliki bingkai data. Sebut saja dia bob
:
> head(bob)
phenotype exclusion
GSM399350 3- 4- 8- 25- 44+ 11b- 11c- 19- NK1.1- Gr1- TER119-
GSM399351 3- 4- 8- 25- 44+ 11b- 11c- 19- NK1.1- Gr1- TER119-
GSM399352 3- 4- 8- 25- 44+ 11b- 11c- 19- NK1.1- Gr1- TER119-
GSM399353 3- 4- 8- 25+ 44+ 11b- 11c- 19- NK1.1- Gr1- TER119-
GSM399354 3- 4- 8- 25+ 44+ 11b- 11c- 19- NK1.1- Gr1- TER119-
GSM399355 3- 4- 8- 25+ 44+ 11b- 11c- 19- NK1.1- Gr1- TER119-
Saya ingin menyatukan baris bingkai data ini (ini akan menjadi pertanyaan lain). Tapi lihatlah:
> class(bob$phenotype)
[1] "factor"
Bob
Kolom adalah faktor. Jadi, misalnya:
> as.character(head(bob))
[1] "c(3, 3, 3, 6, 6, 6)" "c(3, 3, 3, 3, 3, 3)"
[3] "c(29, 29, 29, 30, 30, 30)"
Saya tidak mulai memahami hal ini, tetapi saya kira ini adalah indeks-indeks ke dalam tingkat faktor-faktor kolom (pengadilan raja caractacus) bob
? Bukan yang saya butuhkan.
Anehnya saya bisa melalui kolom bob
dengan tangan, dan lakukan
bob$phenotype <- as.character(bob$phenotype)
yang bekerja dengan baik. Dan, setelah mengetik, saya bisa mendapatkan data.frame yang kolomnya karakter daripada faktor. Jadi pertanyaan saya adalah: bagaimana saya bisa melakukan ini secara otomatis? Bagaimana cara mengubah data.frame dengan kolom faktor menjadi data.frame dengan kolom karakter tanpa harus secara manual melalui setiap kolom?
Pertanyaan bonus: mengapa pendekatan manual berfungsi?
bob
.