Without seeing your data it's hard to tell exactly what's going wrong, but you could try something like `mutate(abc = haven::as_factor(col_name))` e.g.:
```r
iris %>%
mutate(abc = haven::as_factor(Sepal.Length))
# Sepal.Length Sepal.Width Petal.Length Petal.Width Species abc
# 1 5.1 3.5 1.4 0.2 setosa 5.1
# 2 4.9 3.0 1.4 0.2 setosa 4.9
# 3 4.7 3.2 1.3 0.2 setosa 4.7
# 4 4.6 3.1 1.5 0.2 setosa 4.6
# 5 5.0 3.6 1.4 0.2 setosa 5
```
Since R.2.14 (I guess) you can feed your data text representation directly to `read.table`:
df <- read.table(header=TRUE,
text="Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5.0 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
")