我正在努力尝试将NAs列插入数据帧的特定位置。
例如,我有数据集:
dataset <- data.frame(c1 = 1:5,
c2 = 2:6,
c3 = 3:7,
c4 = 4:8,
c5 = 5:9,
c6 = 10:14,
c7 = 15:19,
c8 = 20:24,
c9 = 25:29,
c10 = 30:34)
在此示例中,我想在dataset
每2个存在的列之后插入4个NAs列。答案可能是这样的:
dataset.answer <- data.frame(c1 = 1:5,
c2 = 2:6,
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c3=3:7,
c4=4:8,
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c5=5:9,
c6=10:14,
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c7=15:19,
c8=20:24,
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c.und.1<-rep(NA,dim(dataset)[1]),
c9=25:29,
c10=30:34)
有人建议用优雅的方式吗?
答案 0 :(得分:2)
也许下面的基本R解决方案不是很好,但是我相信它能起作用。
null value in column "article_id" violates not-null
constraint. DETAIL: Failing row
contains (18, username@email.com, check message, 2019-01-20 18:35:36.615955+00, t, null).
答案 1 :(得分:2)
创建第二个http://localhost:51208/api/daily/mah/2018/08/13
值数据集,然后替换相关列。
NA
df <- as.data.frame(matrix(NA, nrow(dataset), 6 * ncol(dataset) / 2 - 4))
cls <- rep(seq(0, ncol(df), by = 6), each=2) + 1:2
df[cls] <- dataset
df
# V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12 V13 V14 V15 V16 V17 V18 V19 V20 V21 V22 V23 V24 V25 V26
# 1 1 2 NA NA NA NA 3 4 NA NA NA NA 5 10 NA NA NA NA 15 20 NA NA NA NA 25 30
# 2 2 3 NA NA NA NA 4 5 NA NA NA NA 6 11 NA NA NA NA 16 21 NA NA NA NA 26 31
# 3 3 4 NA NA NA NA 5 6 NA NA NA NA 7 12 NA NA NA NA 17 22 NA NA NA NA 27 32
# 4 4 5 NA NA NA NA 6 7 NA NA NA NA 8 13 NA NA NA NA 18 23 NA NA NA NA 28 33
# 5 5 6 NA NA NA NA 7 8 NA NA NA NA 9 14 NA NA NA NA 19 24 NA NA NA NA 29 34
中6 * ncol(dataset) / 2 -4
的列数由
df
-2个数字列+ 4个6
列NA
-我们正在创建的“集合”的数量ncol(dataset) / 2
-删除最后要附加的4 - 4
列使用
可以很容易地在此处替换列名称NA
尽管不建议有多个具有相同名称的列。