For the dataframe below, the there are 59 columns 

```
circleid  name  birthday  56 more...
1         1    1       
2         2    10
2         5     68
2         1    10
1         1    1

```

Result I want

```
circleid  distinct_name  distinct_birthday  56 more...
1         1              1       
2         3              2

quiz <- read.csv("https://raw.githubusercontent.com/pranavn91/PhD/master/Expt/circles-removed-na.csv", header = T)

```

So far

```
ddply(quiz,~circleid,summarise,number_of_distinct_name=length(unique(name)))

```

This works for 1 column how do i get the full dataframe

```
columns <- colnames(quiz)

for (i in c(1:58)
{
final <- ddply(quiz,~circleid,summarise,number_of_distinct_name=length(unique(columns[i])))

}

```