Quantcast
Channel: Active questions tagged r - Stack Overflow
Viewing all articles
Browse latest Browse all 205399

How to specify a column name in ddply via character variable?

$
0
0

I have a tibble/dataframe with

sample_id     condition     state
---------------------------------
sample1       case          val1
sample1       case          val2
sample1       case          val3
sample2       control       val1
sample2       control       val2
sample2       control       val3

The dataframe is generated within a for loop for different states. Hence, every dataframe has a different name for the state column.

I want to group the data by sample_id and calculate the median of the state column such that every unique sample_id has a single median value. The output should be like below...

sample_id     condition     state
---------------------------------
sample1       case          median
sample2       control       median

I am trying the command below; it is working if give the name of the column, but I am not able to pass the name via the state character variable. I tried ensym(state) and !!ensym(state), but they all are throwing errors.

ddply(dat_state, .(sample_id), summarize,  condition=unique(condition), state_exp=median(ensym(state)))

Viewing all articles
Browse latest Browse all 205399

Trending Articles