gpt4 book ai didi

r - 在 data.frame ( 或 table ) 中保持范围

转载 作者:行者123 更新时间:2023-12-04 20:10:07 25 4
gpt4 key购买 nike

我想这样做

set.seed(667) 
df <- data.frame(a = sample(c(c(4,7),11,NA), 10, rep = TRUE),
b = sample(c(1, 2, 3, NA, 5, 6), 10, rep=TRUE),
c = sample(c(11, 12, 13, 14, 15, 16), 10, rep=TRUE))

但不是得到这个,
df
a b c
1 4 NA 12
2 7 6 12
3 NA NA 14
4 11 1 16
5 NA 2 14
6 NA 3 13
7 11 NA 13
8 NA 6 15
9 7 3 16
10 7 5 16

我想在某些点有一个范围的地方得到一些东西,
    a  b  c
1 4-7 NA 12
2 4-7 6 12
3 NA NA 14
4 11 1 16
5 NA 2 14
6 NA 3 13
7 11 NA 13
8 NA 6 15
9 4-7 3 16
10 4-7 5 16

我感到困惑和疲倦并寻求帮助。

阅读 SimonO101 在 2013-09-09 22:30:14Z 的评论后更新

我想我的问题也可以这样说,我想要这个数据框
data.frame(A = c(4:7, 9),B = c(1,2))

出现像
  A   B
1 4:7 9
2 2 2

最佳答案

也许你想要这个?

library(data.table)

d = data.table(A = list(c(4,7), 9),B = c(1,2))
# A B
#1: 4,7 1
#2: 9 2

另一种可能性是存储未评估的表达式(实际上不清楚 OP 想要什么,所以我只是在这里暗中拍摄):
d = data.table(A = list(quote(4:7), 9), B = c(1,2))
# A B
#1: <call> 1
#2: 9 2
d[,A]
#[[1]]
#4:7
#
#[[2]]
#[1] 9
lapply(d[, A], eval)
#[[1]]
#[1] 4 5 6 7
#
#[[2]]
#[1] 9

关于r - 在 data.frame ( 或 table ) 中保持范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18707995/

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