d %>% + group_by(gene_name) %>% + mutate(row_mean = rowMeans(select(., -gene_name) %>% ungroup()), .groups = "drop") %>% + slice(which.max(row_mean)) %>% + select(-row_mean) Adding missing grouping variables: `gene_name`
时间: 2024-02-13 09:06:31 浏览: 112
这段代码中,使用了`+`符号来将多行代码连接在一起,不过在每行代码结尾处都加上了`+`符号,应该去掉这些多余的符号。
另外,出现“Adding missing grouping variables: `gene_name`”警告信息的原因是,在`mutate()`函数中没有明确指定`gene_name`列作为分组变量。需要将`mutate()`函数中的`select(., -gene_name)`改为`select(-gene_name) %>% ungroup()`,以去除分组信息并确保`rowMeans()`函数对整个数据框进行计算。修改后的代码如下:
```
d %>%
group_by(gene_name) %>%
mutate(row_mean = rowMeans(select(-gene_name) %>% ungroup()), .groups = "drop") %>%
slice(which.max(row_mean)) %>%
select(-row_mean)
```
这样就可以避免警告信息的出现,并正确地对每个分组进行计算。
相关问题
d %>% + group_by(gene_name) %>% + mutate(row_mean = rowMeans(select(., -gene_name)), .groups = "drop") %>% + slice(which.max(row_mean)) %>% + select(-row_mean) Adding missing grouping variables: `gene_name`
这段代码中,使用了`+`符号来将多行代码连接在一起,不过在每行代码结尾处都加上了`+`符号,应该去掉这些多余的符号。
另外,出现“Adding missing grouping variables: `gene_name`”警告信息的原因是,在`mutate()`函数中没有明确指定`gene_name`列作为分组变量。需要将`mutate()`函数中的`select(., -gene_name)`改为`select(., -gene_name) %>% ungroup()`,以去除分组信息并确保`rowMeans()`函数对整个数据框进行计算。修改后的代码如下:
```
d %>%
group_by(gene_name) %>%
mutate(row_mean = rowMeans(select(., -gene_name) %>% ungroup()), .groups = "drop") %>%
slice(which.max(row_mean)) %>%
select(-row_mean)
```
这样就可以避免警告信息的出现,并正确地对每个分组进行计算。
d %>% group_by(gene_name) %>% mutate(row_mean = rowMeans(select(., -gene_name))) %>% slice(which.max(row_mean)) %>% ungroup() %>% select(-row_mean)怎么拆成多个步骤
这段代码可以拆分成以下多个步骤:
1. 对数据框`d`按照`gene_name`进行分组。
```
grouped_data <- d %>% group_by(gene_name)
```
2. 对于每个分组,计算除`gene_name`列外的其他列的行均值,并将结果存储在新列`row_mean`中。
```
data_with_mean <- grouped_data %>% mutate(row_mean = rowMeans(select(., -gene_name)))
```
3. 对于每个分组,选择`row_mean`列中值最大的行,并将结果存储为一个新的数据框。
```
max_row_data <- data_with_mean %>% slice(which.max(row_mean))
```
4. 取消分组操作。
```
ungrouped_data <- max_row_data %>% ungroup()
```
5. 从最终的数据框中删除`row_mean`列。
```
final_data <- ungrouped_data %>% select(-row_mean)
```
这样,我们就将原来的代码分解成了五个步骤,每个步骤都是一个单独的管道操作。
阅读全文