In a data frame, I have one column containing character strings. Let\'s say it looks like this:
x <- unique(df[,1])
x
\"A\" \"A\" \"B\" \"B\" \"B\" \"C\"
I think you are looking for combn:
x <- c("A", "A", "B", "B", "B", "C")
combn(x,2)
Gives:
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14] [,15]
[1,] "A" "A" "A" "A" "A" "A" "A" "A" "A" "B" "B" "B" "B" "B" "B"
[2,] "A" "B" "B" "B" "C" "B" "B" "B" "C" "B" "B" "C" "B" "C" "C"
And if you want only unique values in x (I have no idea why you have duplicate values in x in the first place if it's the result of a unique() call):
> combn(unique(x),2)
[,1] [,2] [,3]
[1,] "A" "A" "B"
[2,] "B" "C" "C"