gpt4 book ai didi

r - 将标签添加到 R 中的剪切功能

转载 作者:行者123 更新时间:2023-12-04 16:31:31 27 4
gpt4 key购买 nike

对于示例数据框:

df1 <- structure(list(X = 1:15, a = c(2L, 3L, 4L, 3L, 7L, 5L, NA, 2L, 
9L, 7L, 0L, 1L, 20L, 15L, 14L)), .Names = c("X", "a"),
class = "data.frame", row.names = c(NA,
-15L))

我使用以下代码将“a”列分成四分位数:
cut.at.n.tile <- function(X , n = 4){ 
cut( X , breaks = quantile( X ,
probs = (0:n)/n , na.rm = TRUE ) , include.lowest = TRUE )}
df1$a.quartile <- cut.at.n.tile( df1$a , n = 4)

如何用 1 - 4(1 是最低的)替换标签?我不想简单地重新编码这些值,因为我将使用不同的连续变量运行很多次。

任何帮助将不胜感激。

最佳答案

使用 labels论据 cut ...

cut.at.n.tile <- function(X , n = 4){ 
cut( X , breaks = quantile( X ,
probs = (0:n)/n , na.rm = TRUE ) ,
labels = 1:n,
include.lowest = TRUE )}
cut.at.n.tile( df1$a , n = 4)
## [1] 1 2 2 2 3 3 <NA> 1 4 3
## 1 1 4 4 4
## Levels: 1 2 3 4

您可能还对 ggplot2::cut_number 感兴趣, 这样做
本质上是一样的...
ggplot2::cut_number(df1$a, n = 4, labels = 1:4)

关于r - 将标签添加到 R 中的剪切功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30491419/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com